CoCreate User Forum  

Go Back   CoCreate User Forum > Support > Customization

Reply
 
Thread Tools Search this Thread Rating: Thread Rating: 2 votes, 5.00 average. Display Modes
  #1  
Old 10-21-2012, 11:16 PM
rvn rvn is offline
Registered User
 
Join Date: Mar 2011
Posts: 52
lisp error

Hi everybody,

I get the following error when the macro gets aborted by (sd-abort-dialog) "LISP error: 0 is an undefined tag." How can I solve this? I realy don't know what this error means.
This is the code:
Code:
(in-package :conemoer)
(use-package :oli)

(sd-defdialog 'Conemoer
	:dialog-title "Cone-moer"
	:persistent-proposals t
	:variables '(
	(ASSEMBLY	:multiple-items nil
			:modifies nil
			:initial-value nil
			:show-select-menu nil
			:title "Assembly/Buis"
			:after-input (if (sd-inq-part-p ASSEMBLY) (sd-set-variable-status 'NUMMER :visible t))
			:promt-text "Selecteer de groepsassembly of de buis."
			:value-type  :part-assembly)
			
    (GROEP	:value-type :positive-number
			:prompt-text "Geef de groepsnummer in."
			:check-function
				#'(lambda (new-value)
				(if (>= new-value 1) :ok
				(values :error
				"Ingegeven groepsnummer klopt niet")))
			:title "Groepsnummer")	

    (NUMMER	:value-type :positive-number
			:prompt-text "Geef de buisnummer in."
			:initial-visible nil
			:check-function
				#'(lambda (new-value)
				(if (>= new-value 1) :ok
				(values :error
				"Ingegeven buisnummer klopt niet")))
			:title "Buisnummer")			
			
	(NEXT 	:toggle-type :grouped-toggle
			:push-action (doit)
			:after-input (setf ASSEMBLY nil)
			:next-variable 'ASSEMBLY)
	
    )
	
	:local-functions '(
		(doit ()
			(if (sd-inq-assembly-p ASSEMBLY)
				(progn
					(setf buizen (sd-call-cmds (get_selection :focus_type *sd-part-seltype* :select :in_assembly ASSEMBLY :all_3d)))
					(setf TELBUIS 1)
					(dolist (obj buizen "done")
						(progn
							(setf ORIGINEEL (sd-inq-obj-basename obj))
							(setf BUIS obj)
							(if (and (> GROEP 9) (> TELBUIS 9))
								(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G~A-~A" GROEP TELBUIS)))
							)
							(if (and (> GROEP 9) (<= TELBUIS 9))
								(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G~A-0~A" GROEP TELBUIS)))
							)
							(if (and (<= GROEP 9) (> TELBUIS 9))
								(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G0~A-~A" GROEP TELBUIS)))
							)
							(if (and (<= GROEP 9) (<= TELBUIS 9))
								(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G0~A-0~A" GROEP TELBUIS)))
							)
							(setf ASSYOBJ (sd-inq-parent-obj BUIS))
							(if (equal ASSYOBJ nil)
								(setf PAD /)
								(setf PAD (sd-inq-obj-pathname ASSYOBJ))
							)
							(setf vlakken (sd-call-cmds (get_selection :focus_type *sd-plane-seltype* :select :selected_part BUIS :all_3d)))
							(setf TEL 0)
							(dolist (obj vlakken "done")
								(progn
									(setf VLAK obj)
									(setf HYDRAULIEKBUIS (sd-inq-obj-basename (sd-inq-parent-obj VLAK)))		
									(setf cirkels (sd-call-cmds (get_selection :focus_type *sd-circle-3d-seltype* :select :by_face VLAK)))
									(setf R 0)
									(dolist (obj cirkels "done")
										(progn
											(setf CENTER (sd-circle-center (sd-inq-geo-props obj :dest-space :global)))
											(setf RAD (sd-circle-radius (sd-inq-geo-props obj :dest-space :global)))
											(setf P3 (sd-edge-start-pnt (sd-inq-edge-geo obj :dest-space :global)))
											(if (> RAD R)
												(setf R RAD)
											)
										)
									)
									(programma)
								)
							)
							(sd-call-cmds (change_pa_owner :new_owner (format nil "~A/montage_~A" PAD HYDRAULIEKBUIS) :parts_assemblies (format nil "~A/~A" PAD HYDRAULIEKBUIS)))
							(setf TELBUIS (+ 1 TELBUIS))
						)
					)
					(if (> GROEP 9)
						(sd-call-cmds (change_name_pa :part_asmb ASSEMBLY :name (format nil "montage_leidinggroep~A" GROEP)))
						(sd-call-cmds (change_name_pa :part_asmb ASSEMBLY :name (format nil "montage_leidinggroep0~A" GROEP)))
					)
				)
			)
			(if (sd-inq-part-p ASSEMBLY)
				(progn
					(setf ORIGINEEL (sd-inq-obj-basename ASSEMBLY))
					(setf BUIS ASSEMBLY)
					(if (and (> GROEP 9) (> NUMMER 9))
						(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G~A-~A" GROEP NUMMER)))
					)
					(if (and (> GROEP 9) (<= NUMMER 9))
						(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G~A-0~A" GROEP NUMMER)))
					)
					(if (and (<= GROEP 9) (> NUMMER 9))
						(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G0~A-~A" GROEP NUMMER)))
					)
					(if (and (<= GROEP 9) (<= NUMMER 9))
						(sd-call-cmds (change_name_pa :part_asmb BUIS :name (format nil "leiding-G0~A-0~A" GROEP NUMMER)))
					)
					(setf ASSYOBJ (sd-inq-parent-obj BUIS))
					(if (equal ASSYOBJ nil)
						(setf PAD "/")
						(setf PAD (sd-inq-obj-pathname ASSYOBJ))
					)
					(setf vlakken (sd-call-cmds (get_selection :focus_type *sd-plane-seltype* :select :selected_part BUIS :all_3d)))
					(setf TEL 0)
					(dolist (obj vlakken "done")
						(progn
							(setf VLAK obj)
							(setf HYDRAULIEKBUIS (sd-inq-obj-basename (sd-inq-parent-obj VLAK)))		
							(setf cirkels (sd-call-cmds (get_selection :focus_type *sd-circle-3d-seltype* :select :by_face VLAK)))
							(setf R 0)
							(dolist (obj cirkels "done")
								(progn
									(setf CENTER (sd-circle-center (sd-inq-geo-props obj :dest-space :global)))
									(setf RAD (sd-circle-radius (sd-inq-geo-props obj :dest-space :global)))
									(setf P3 (sd-edge-start-pnt (sd-inq-edge-geo obj :dest-space :global)))
									(if (> RAD R)
										(setf R RAD)
									)
								)
							)
							(programma)
						)
					)
					(sd-call-cmds (change_pa_owner :new_owner (format nil "~A/montage_~A" PAD HYDRAULIEKBUIS) :parts_assemblies (format nil "~A/~A" PAD HYDRAULIEKBUIS)))
				)
			)
		)
		(programma ()
			(if (= R 0)
					(progn
											(sd-display-message (format nil "De buis met naam ~A is niet juist getekend! Maak gebruik van de module Pipe-bending" ORIGINEEL))
											(sd-abort-dialog)
										)
										(progn
											(setf X (* (gpnt3d_x (sd-plane-normal (sd-inq-geo-props VLAK :dest-space :global))) -1))
											(setf Y (* (gpnt3d_y (sd-plane-normal (sd-inq-geo-props VLAK :dest-space :global))) -1))
											(setf Z (* (gpnt3d_z (sd-plane-normal (sd-inq-geo-props VLAK :dest-space :global))) -1))
											(setf RICHTING (make-gpnt3d :x X :y Y :z Z))
											(setf D (sd-num-to-string (* 2 R) 0))
											(sd-call-cmds (load_package (format nil "O:/Ruben/assy_~AL.pkg" D)))
											(display :clear-hide)
											(setf ASSY (format nil "/assy_~AL" D))
											(setf STUK (format nil "~A/buis" ASSY))
											(setf cirkel (sd-call-cmds (get_selection :focus_type *sd-circle-3d-seltype* :select :selected_part STUK :all_3d)))
											(dolist (obj cirkel "done")
												(progn
													(setf RICHT (sd-circle-normal (sd-inq-geo-props obj :dest-space :global)))
													(setf P (sd-circle-center (sd-inq-geo-props obj :dest-space :global)))
													(setf P2 (sd-edge-start-pnt (sd-inq-edge-geo obj :dest-space :global)))
												)
											)
											(sd-call-cmds (position_pa :part_assembly ASSY :match_pt_dir_pt P2 P3 RICHT RICHTING P CENTER))
											(if (= TEL 2)
												(progn
													(sd-call-cmds (change_name_pa :part_asmb (format nil "~A/profielring_P-R~AL" ASSY D) :name (format nil "profielring_P-R~AL.~A" D TEL)))
													(sd-call-cmds (change_name_pa :part_asmb (format nil "~A/moer_M~AL" ASSY D) :name (format nil "moer_M~AL.~A" D TEL))) 
													(sd-call-cmds (change_pa_owner :new_owner (format nil "~A/montage_~A" PAD HYDRAULIEKBUIS) :parts_assemblies (format nil "~A/profielring_P-R~AL.~A" ASSY D TEL)))
													(sd-call-cmds (change_pa_owner :new_owner (format nil "~A/montage_~A" PAD HYDRAULIEKBUIS) :parts_assemblies (format nil "~A/moer_M~AL.~A" ASSY D TEL)))
													(sd-call-cmds (delete_3d (format nil "/assy_~AL" D)))
													(setf TEL 1)
												)
											)
											(if (= TEL 0)
												(progn
													(sd-call-cmds (create_assembly :name (format nil "montage_~A" HYDRAULIEKBUIS) :owner PAD))
													(sd-call-cmds (change_pa_owner :new_owner (format nil "~A/montage_~A" PAD HYDRAULIEKBUIS) :parts_assemblies (format nil "~A/profielring_P-R~AL" ASSY D)))
													(sd-call-cmds (change_pa_owner :new_owner (format nil "~A/montage_~A" PAD HYDRAULIEKBUIS) :parts_assemblies (format nil "~A/moer_M~AL" ASSY D)))
													(sd-call-cmds (delete_3d (format nil "/assy_~AL" D)))
													(setf TEL 2)
												)
											)
										)
									)
		)
	)
	
	:ok-action '(doit)
	
) ;; end dialog
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -8. The time now is 11:08 AM.



Hosted by SureServer    Forums   Modeling FAQ   Macro Site   Vendor/Contractors   Software Resellers   CoCreate   Gallery   Home   Board Members   Regional User Groups  By-Laws  

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
You Rated this Thread: