(in-package :custom) (use-package :OLI) (sd-defdialog 'pw_vp_dokumentation :dialog-title "Ansicht fuer Dokumentation" :variables '( (VIEWPORT1 :value-type :string :initial-value (sd-inq-current-vp) :title "Viewport:" :prompt-text "Viewport angeben." ) #| (VIEWPORT2 :value-type :string :initial-value "3D VP" :title "Viewport (Anno):" :prompt-text "Annotation-Viewport angeben." ) |# ("Winkelvoreinstellung") (ANGX_15_30 :title "X, L15, R30" :value-type :grouped-boolean :size :half ) (ANGX_30_15 :title "X, L30, R15" :value-type :grouped-boolean :size :half ) (ANGY_15_30 :title "Y, L15, R30" :value-type :grouped-boolean :size :half :initial-value t ) (ANGY_30_15 :title "Y, L30, R15" :value-type :grouped-boolean :size :half ) (ANGZ_15_30 :title "Z, L15, R30" :value-type :grouped-boolean :size :half ) (ANGZ_30_15 :title "Z, L30, R15" :value-type :grouped-boolean :size :half ) ("Achsrichtung vertikal") (XP_DIR :title "+X" :value-type :grouped-boolean :size :half ) (XN_DIR :title "-X" :value-type :grouped-boolean :size :half ) (YP_DIR :title "+Y" :value-type :grouped-boolean :size :half :initial-value t ) (YN_DIR :title "-Y" :value-type :grouped-boolean :size :half ) (ZP_DIR :title "+Z" :value-type :grouped-boolean :size :half ) (ZN_DIR :title "-Z" :value-type :grouped-boolean :size :half ) ("Richtung der Ansicht") (X_DIR :value-type :boolean :title "X-Richtungskomponente umkehren" :toggle-type :wide-toggle :initial-value nil ) (Y_DIR :value-type :boolean :title "Y-Richtungskomponente umkehren" :toggle-type :wide-toggle :initial-value nil ) (Z_DIR :value-type :boolean :title "Z-Richtungskomponente umkehren" :toggle-type :wide-toggle :initial-value nil ) ("GÏltige Kombinationen:") (KOMBX1 :title "X1" :toggle-type :grouped-toggle :push-action (progn (setq ANGX_15_30 t) (setq XP_DIR t) ) ) (KOMBX2 :title "X2" :toggle-type :grouped-toggle :push-action (progn (setq ANGX_30_15 t) (setq XP_DIR t) ) ) (KOMBY1 :title "Y1" :toggle-type :grouped-toggle :push-action (progn (setq ANGY_15_30 t) (setq YP_DIR t) ) ) (KOMBY2 :title "Y2" :toggle-type :grouped-toggle :push-action (progn (setq ANGY_30_15 t) (setq YP_DIR t) ) ) (KOMBZ1 :title "Z1" :toggle-type :grouped-toggle :push-action (progn (setq ANGZ_15_30 t) (setq ZP_DIR t) ) ) (KOMBZ2 :title "Z2" :toggle-type :grouped-toggle :push-action (progn (setq ANGZ_30_15 t) (setq ZP_DIR t) ) ) ("-") (START :title "Ûbernehmen" :push-action (pw_vp_dokumentation_go) ) );end variables :mutual-exclusion '( (XP_DIR XN_DIR YP_DIR YN_DIR ZP_DIR ZN_DIR) (ANGX_15_30 ANGX_30_15 ANGY_15_30 ANGY_30_15 ANGZ_15_30 ANGZ_30_15) ) :local-functions '((pw_vp_dokumentation_go () (progn (if ANGX_15_30 (progn (setq X_BASE -3.9098095) (setq Y_BASE -7.5532243) (setq Z_BASE -5.1456069) ) ) (if ANGX_30_15 (progn (setq X_BASE -3.9098095) (setq Y_BASE -5.1456069) (setq Z_BASE -7.5532243) ) ) (if ANGY_15_30 (progn (setq X_BASE -5.1456069) (setq Y_BASE -3.9098095) (setq Z_BASE -7.5532243) ) ) (if ANGY_30_15 (progn (setq X_BASE -7.5532243) (setq Y_BASE -3.9098095) (setq Z_BASE -5.1456069) ) ) (if ANGZ_15_30 (progn (setq X_BASE -7.5532243) (setq Y_BASE -5.1456069) (setq Z_BASE -3.9098095) ) ) (if ANGZ_30_15 (progn (setq X_BASE -5.1456069) (setq Y_BASE -7.5532243) (setq Z_BASE -3.9098095) ) ) (if XP_DIR (setq AXIS_UP (gpnt3d 1 0 0)) ) (if XN_DIR (setq AXIS_UP (gpnt3d -1 0 0)) ) (if YP_DIR (setq AXIS_UP (gpnt3d 0 1 0)) ) (if YN_DIR (setq AXIS_UP (gpnt3d 0 -1 0)) ) (if ZP_DIR (setq AXIS_UP (gpnt3d 0 0 1)) ) (if ZN_DIR (setq AXIS_UP (gpnt3d 0 0 -1)) ) (if X_DIR (setq X_DIRECTION -1) (setq X_DIRECTION 1) ) (if Y_DIR (setq Y_DIRECTION -1) (setq Y_DIRECTION 1) ) (if Z_DIR (setq Z_DIRECTION -1) (setq Z_DIRECTION 1) ) (setq VP_COORDINATES_X (* X_BASE X_DIRECTION)) (setq VP_COORDINATES_Y (* Y_BASE Y_DIRECTION)) (setq VP_COORDINATES_Z (* Z_BASE Z_DIRECTION)) (setq VP_CAMERA (OLI::make-sd-vp-camera-struct :from-pt (gpnt3d 0 0 0) :to-pt (gpnt3d VP_COORDINATES_X VP_COORDINATES_Y VP_COORDINATES_Z) :up-dir AXIS_UP :back-clip 0 :front-clip 0 :projection 1 :view-field 4 ) ) (sd-call-cmds (sd-set-vp-camera VIEWPORT1 VP_CAMERA :smooth nil) ) #| (sd-call-cmds (sd-set-vp-camera VIEWPORT2 VP_CAMERA :smooth NIL) ) |# (sd-call-cmds (update_screen) ) (FIT_VP VIEWPORT1) ) ) ;end progn ) ;pw_vp_montageanleitungen_go :ok-action '() ) ;end sd-dialog