| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Objektauswahl in AutoCAD (1473 mal gelesen)
|
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 02. Sep. 2005 16:38 <-- editieren / zitieren --> Unities abgeben:
Hallo so kurz vorm Wochenende, ich möchte das der Benutzer in AutoCAD ein! bestimmtes Objekt auswählt. Momentan mach ich das mit SelectOnScreen und einem Filter der nur den gewünschten Typ zur Selektion zuläßt. Klappt grundsätzlich auch ganz gut, da eine Mehrfachauswahl vom Programm abgefangen werden kann. Außerdem kommt nur die einfache Aufforderung "Objekt wählen:" Die Frage ist, wie kann ich erstens in die Befehlszeile so was wie "Bitte Ansichtsfenster wählen:" und wie kann ich es erreichen das nur ein Objekt gewählt werden kann ?? Stelli1 ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Widmann Mitglied ATHENA Support/Training
Beiträge: 218 Registriert: 24.08.2005
|
erstellt am: 02. Sep. 2005 18:30 <-- editieren / zitieren --> Unities abgeben: Nur für Stelli1
Für deinen Wunsch dem User zu sagen "Bitte Ansichtsfenster wählen:" häb ich dir gleich ne Lösung Code:
ThisDrawing.Utility.Prompt (chr(10) & "Bitte Ansichtsfenster wählen:")
Das Chr(10) hab ich deswegen hingemacht damit der Text einzeln über der Zeile "Objekte wählen:" steht und nicht so "Befehl:Bitte Ansichtsfenster wählen" wie dann nur ein Objekt ausgewählt werden kann, weis ich nicht (deine Methode ist eigentlich schon ganz gut, hätt ich auch so gemacht) Schönes Wochenende Stelli1
------------------ Mfg Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 02. Sep. 2005 19:25 <-- editieren / zitieren --> Unities abgeben: Nur für Stelli1
Abend Stelli, hoffe bin nicht voll daneben, aber wenns nur ein Entity sein darf/soll, vielleicht auch sowas in der Art:
Code:
dim o as object, p thisdrawing.utility.GetEntity o, p, "ein Objekt bitte: " debug.print typename(o)
Gruss Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 02. Sep. 2005 19:47 <-- editieren / zitieren --> Unities abgeben:
Hallo Andreas, Hallo Nancy, schön das andere auch noch klicken müssen und Danke für dir Antworten. Beides hilft weiter. Ich kann mich jedoch nicht entscheiden, ob ich dem Filter (User kann nur das gewollte anklicken) oder der Lösung von Nancy arbeiten soll. Diese Lösung ist eigentlich genau die absolut richtige, wenn man noch einen Filter obendrauf setzen könnte. Was würdet ihr machen ?? Schönes Wochenende Stelli1 ------------------
[Diese Nachricht wurde von Stelli1 am 02. Sep. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mapcar Mitglied CADmin
Beiträge: 1250 Registriert: 20.05.2002 Die Phönizier haben das Geld erfunden - aber warum so wenig? (Johann Nepomuk Nestroy)
|
erstellt am: 02. Sep. 2005 20:22 <-- editieren / zitieren --> Unities abgeben: Nur für Stelli1
Die Antwort ist ganz einfach: AutoCAD ist zwar, was Konsistenz in der Benutzerführung betrifft, ärmer als die letzte Kirchenmaus, aber immerhin klappt's beim Wählen: Entweder steht da "Objekt wählen: "(draufklicken!) oder "Objekte wählen: "(elaborierte Methoden wie Crosspoly oder Zaun), und dann weiss man schon, was kommt. Davon würde ich in keinem Falle abweichen - deshalb eindeutig PRO Nancy. Alles andere verwirrt nur. Ach ja: Einen Filter baut man ein, indem man das ganze in eine Schleife einbettet und dem User solange auf die Finger haut, bis... Gruß, Axel Strube-Zettler ------------------ Meine AutoLisp-Seiten Mein Angriff auf dein Zwerchfell Mein Lexikon der Fotografie Mein gereimtes Gesülze Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 02. Sep. 2005 20:33 <-- editieren / zitieren --> Unities abgeben:
|
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 02. Sep. 2005 20:33 <-- editieren / zitieren --> Unities abgeben: Nur für Stelli1
Ich glaube bald Acad selbst macht das auch nicht anders;-) Beispiel: Code:
Befehl: _extrude Aktuelle Dichte des Drahtmodells: ISOLINES=4 Objekte wählen: 1 gefunden Objekte wählen: Extrusionshöhe angeben oder [Pfad]: 1 Verjüngungswinkel für Extrusion angeben <0>: Kann das gewählte Objekt nicht extrudieren.
Hier hatte ich einfach eine stinknormale Linie angewählt gehabt. Irgendwann stellt halt Acad fest, dass das gewählte Objekt nicht dem Typ [Fläche/PLine] entspricht, um extrudiert werden zu können. Wobei Extrudieren aber ja wiederum auch eine Mehrfachauswahl zulässt, aber egal.Es erscheint mir jedenfalls erstmal so, als muss nach der User-Auswahl, einfach eine Prüfung stattfinden, was denn nun wirklich selektiert wurde. Stimmt das gewählte Entity mit dem TypeOf überein ... okay, weiter im Programm Stimmts aber nicht überein, ein Prompt schreiben wie: 'Falscher Objekttyp gewählt' oder 'kann das gewählte Objekt nicht blabla' Acad machts ja eigentlich auch nicht anders. Jedenfalls ein GetEntity mit Filterfunktion, kenn ich nicht - weiss ich nicht - wär mal interessant. Was ich machen würde? keine Ahnung;-) Mangels tieferer Kenntnisse erscheints mir bald gehüpft wie gesprungen, bei nem sset() musste sicherstellen, das nur ein Objekt des vorgefilterten Typs drinnen ist, bei Getentity() hast zwar immer nur Eines, musst aber den ObjektTyp abklopfen auf Stimmigkeit. Aber vielleicht hat ja noch wer was bessres auf Lager. lg Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 02. Sep. 2005 20:37 <-- editieren / zitieren --> Unities abgeben: Nur für Stelli1
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|