(in-package :custom) (use-package :oli) ;;----------------------------------------------------------------------------------------------* ;; Vorgaben setzen: ;; Moegliche Vorgabewerte: ;;----------------------------------------------------------------------------------------------* ;;----------------------------------------------------------------------------------------------* (sd-defdialog 'AE_mit_Flaechenschwerpunkt ;;:dialog-title "AE_Schwerpkt" :toolbox-button nil :dialog-control :sequential :variables '( (Flaeche :selection (*sd-face-seltype*) :title "Flaeche" :prompt-text "FlÌche, auf welche der eigene FlÌchenschwerpunkt projiziert werden soll." ) ) :local-functions '( (AE_erzeugen() (sd-call-cmds (DELETE_3D (format NIL "~A~A" "/" "AE_Schwerpkt")));eventuell alte AE löschen (sd-call-cmds (CREATE_WORKPLANE :NEW ;;neue AE auf selektierter Fläche erstellen :NAME "AE_Schwerpkt" :PAR_FACE :FACE Flaeche )) (setf geo_mode (sd-inq-geometry-mode));;aktuellen Geometriemodus merken (:real oder :construction) (sd-call-cmds (GEOMETRY_MODE :construction));; Geometriemodus auf Hilfsgeo setzen (sd-call-cmds (PROJECT Flaeche));; Flaeche auf die aktuelle AE projezieren (setf fl_sp (sd-vec-xform (sd-call-cmds (get_vol_prop :for_face :face Flaeche :select_done :tol :rough_tol :centroid)) :source-space :global :dest-space (sd-inq-curr-wp)));; Flaechenschwerpunktdaten ermitteln und in die AE Koordinaten projezieren (setf u_koord (gpnt3d_x fl_sp));; U-Koordinaten selectieren (setf v_koord (gpnt3d_y fl_sp));; V-Koordinaten selectieren (sd-call-cmds (C_LINE_INF :HORIZONTAL v_koord));; horizontale Hilfegeometrie im Schwerpunkt erstellen (sd-call-cmds (C_LINE_INF :VERTICAL u_koord));; vertikale Hilfegeometrie im Schwerpunkt erstellen (sd-call-cmds (GEOMETRY_MODE geo_mode));; den Geometriemodus wieder auf den ursprünglichen zurück setzten ) ) :ok-action '(AE_erzeugen) :cancel-action '() :cleanup-action '() )