Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  LISP: Fangbereich bei get_selection

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO
  
Einweihung des IT-Campus Ellwangen mit Winfried Kretschmann bei INNEO, eine Pressemitteilung
Autor Thema:  LISP: Fangbereich bei get_selection (2191 mal gelesen)
holt
Mitglied
Systembetreuer CAD


Sehen Sie sich das Profil von holt an!   Senden Sie eine Private Message an holt  Schreiben Sie einen Gästebucheintrag für holt

Beiträge: 714
Registriert: 07.08.2003

Lenovo ThinkStation P360
Core i7-12700@2.10 GHz, 32GB
NVIDIA RTX A2000 12 GB
Creo Elements/Direct Modeling 20.3
Creo Elements/Direct Drafting 20.3
Creo Elements/Direct ModelManager 20.3

erstellt am: 26. Jan. 2012 10:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


AE_Punkt_auf_Flaeche.png

 
Hallo,

wenn ich mittels get_selection abfrage, ob sich an einem Punkt eine Fläche befindet, werden auch Flächen gefunden, die neben dem Punkt liegen.
Beispiel (siehe auch angehängtes Bild):
(sd-call-cmds (get_selection :focus_type *sd-face-seltype* :select (sd-vec-xform (make-gpnt2d :x -0.5 :y 0) :source-space wp :dest-space :global)))
bringt als Ergebnis eine Fläche.

Weiß jemand, wie groß dieser Fangbereich ist bzw. ob dieser immer gleich groß ist?
Kann der Fangbereich eingeschränkt werden?

------------------
Gruß aus dem Salzkammergut

Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

JouIchBins
Mitglied


Sehen Sie sich das Profil von JouIchBins an!   Senden Sie eine Private Message an JouIchBins  Schreiben Sie einen Gästebucheintrag für JouIchBins

Beiträge: 1
Registriert: 26.01.2012

erstellt am: 26. Jan. 2012 14:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für holt 10 Unities + Antwort hilfreich

Hallo,

der Fangbereich lässt sich z.B. direkt auf dem Arbeitsbereich einstellen einstellen und wird dort auch angezeigt (Symbolleiste "Fangen").
Kannst Du aber auch mit LISP z.B. Abfragen:
(print (oli::sd-inq-catch-range))

Ich hoffe ich konnte Dir damit helfen.
Grüße,
Frank

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

holt
Mitglied
Systembetreuer CAD


Sehen Sie sich das Profil von holt an!   Senden Sie eine Private Message an holt  Schreiben Sie einen Gästebucheintrag für holt

Beiträge: 714
Registriert: 07.08.2003

Lenovo ThinkStation P360
Core i7-12700@2.10 GHz, 32GB
NVIDIA RTX A2000 12 GB
Creo Elements/Direct Modeling 20.3
Creo Elements/Direct Drafting 20.3
Creo Elements/Direct ModelManager 20.3

erstellt am: 27. Jan. 2012 08:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Frank,

danke für den Hinweis, aber das ist nicht das was ich meine.
Der Wert in der Symbolleiste "Fangen" bezieht sich auf die interaktive Auswahl. Wenn man den Wert ändert, hat das keinen Einfluss auf die Funktion get_selection (habs getestet).

------------------
Gruß aus dem Salzkammergut

Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Patrick Weber
Mitglied
Konstruktionstechniker, Admin


Sehen Sie sich das Profil von Patrick Weber an!   Senden Sie eine Private Message an Patrick Weber  Schreiben Sie einen Gästebucheintrag für Patrick Weber

Beiträge: 659
Registriert: 20.11.2006

erstellt am: 27. Jan. 2012 11:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für holt 10 Unities + Antwort hilfreich

Der Fangbereich scheint genau 1mm zu sein. Ob Box oder Kugel habe ich nicht getestet.

Du wirst wohl leider nicht um sd-proj-pnt-on-face herumkommen:

Code:
(let (GLOBAL_WP_PNT3D FACES ONFACE_PNT3D MEINE_FLAECHE)
    (setf GLOBAL_WP_PNT3D (sd-vec-xform (make-gpnt2d :x -0.5 :y 0) :source-space (sd-inq-curr-wp) :Dest-space :global))
    (setf FACES (sd-call-cmds (get_selection :focus_type *sd-face-seltype* :select GLOBAL_WP_PNT3D)))
    (dolist (A FACES)
        (setf ONFACE_PNT3D (sd-proj-pnt-on-face A GLOBAL_WP_PNT3D :source-space :global :sf-space nil))
        (if ONFACE_PNT3D
            (if (sd-num-equal-p (sd-face-relax-pnt-dist ONFACE_PNT3D) 0)
                (progn
                    (display (format nil "Dist=~amm  -  auf Fläche" (sd-face-relax-pnt-dist ONFACE_PNT3D)))
                    (setf MEINE_FLAECHE A)
                )
                (display (format nil "Dist=~amm  -  nicht auf Fläche" (sd-face-relax-pnt-dist ONFACE_PNT3D)))
            )
            (display "nicht auf Fläche bzw. außerhalb der Flächenränder")
        )
                )
    (when MEINE_FLAECHE
                    (sd-call-cmds (face_prop :the_face MEINE_FLAECHE :color 205))
    )
)

------------------
Grüße aus Sachsen
pw

Karl Marx ist tot, Einstein ist tot, und mir ist auch schon ganz schlecht!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

holt
Mitglied
Systembetreuer CAD


Sehen Sie sich das Profil von holt an!   Senden Sie eine Private Message an holt  Schreiben Sie einen Gästebucheintrag für holt

Beiträge: 714
Registriert: 07.08.2003

Lenovo ThinkStation P360
Core i7-12700@2.10 GHz, 32GB
NVIDIA RTX A2000 12 GB
Creo Elements/Direct Modeling 20.3
Creo Elements/Direct Drafting 20.3
Creo Elements/Direct ModelManager 20.3

erstellt am: 01. Feb. 2012 11:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Patrick,

vielen Danke für das tolle Beispiel!
Für meinen Zweck genügt es zwar, wenn ich statt 0.5mm auf 2mm Abstand gehe, aber dein Code ist ein gutes Anschauungsbeispiel.

------------------
Gruß aus dem Salzkammergut

Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz