CADsite forum

AutoCAD => Autolisp => Topic gestart door: fcbsam op wo 04 04 2007, 14:28:54

Titel: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: fcbsam op wo 04 04 2007, 14:28:54
als ik deze lisp routine run dan wil hij de oude snap settings niet opnieuw instellen. Ziet er iemand de fout?

(defun dgfKozijnzicht-01
(dogvariablelist pt100 dogkeys / dogqqqv dogtag
       VAR4
        VAR3
        VAR2
        VAR1
        VAR0
 
        PT100
        PT101
        PT102
        PT103
        PT104
        PT105
        PT106
        PT107
        PT108
        PT109
        PT110
        PT111
        PT112
        PT113
        PT114
        PT115
        PT116
        PT117
        PT118
        PT119
        PT120
        PT121
        PT122
        PT123
        PT124
        PT125
        PT126
        PT127
        PT128
        PT129
        PT130
        PT131
        PT132
        PT133
        PT134
        PT135
        PT136
        PT137
        PT138
        PT139
        PT140
        PT141
        PT142
        PT143
        PT144
        PT145
        PT146
        PT147
        PT148
        PT149
        PT150
        PT151
        PT152
        PT153
        PT154
        PT155
        PT156
        PT157
        PT158
        PT159
        PT160
        PT161
        PT162

        ENT6E9
        ENT6E0
        ENT6E6
        ENT6E3
        ENT716
        ENT722
        ENT71F
        ENT719
        ENT71C
        ENT81A
        ENTBA5
        ENTB91
        ENTB7D
        ENTB6F
        ENTB56
        ENTB42
        ENTB34
        ENTB20
        ENTB0C
        ENTAF8
        ENTAF0
        ENTA19
        ENT97C
        ENT823
        ENT190E
        ENT1D1D
        ENT2337
        ENT2334
        ENT252D
        ENT252A
        ENT2530
        ENT273B
        ENT2954
        ENT2B67
        ENT2D75
        ENT2F94
        ENT2F91
        ENT31DD
        ENT31BF
        ENT31BB
        ENT341B
        ENT3891
        ENT3899
  )

;(c) S.E.B.Vinckier DOG 3.2

  (setq dogtag (entlast))
  (dog-begin)
  (command "_layer" "_m" "DOG" "" )
  (setq dogqqqv nil)
  (setq oldsnap (getvar "osmode"))

  (if (NULL (setq VAR4 (cdr (assoc "VAR4" dogvariablelist )))) ( setq VAR4 244))
  (if (NULL (setq VAR3 (cdr (assoc "VAR3" dogvariablelist )))) ( setq VAR3 250))
  (if (NULL (setq VAR2 (cdr (assoc "VAR2" dogvariablelist )))) ( setq VAR2 156))
  (if (NULL (setq VAR1 (cdr (assoc "VAR1" dogvariablelist )))) ( setq VAR1 1150))
  (if (NULL (setq VAR0 (cdr (assoc "VAR0" dogvariablelist )))) ( setq VAR0 1450))

  ; berekening toevoegen van aantal loodstroken onder kozijn
  (setq maxloodstuk 1500.00)
  (setq overlap 150.00)
  (setq loodlengte (+ VAR0 VAR2 VAR2 300 300))
  (setq aantaloverlap (fix (/ loodlengte maxloodstuk)))
  (setq totaalloodlengte (+ loodlengte (* aantaloverlap overlap)))
  (setq aantalloodstukken (+ (fix (/ totaalloodlengte maxloodstuk)) 1))
  (setq lengteloodstuk (* (+ (fix (/ (/ totaalloodlengte aantalloodstukken) 10)) 1) 10))

  ; startpunt linksboven boeiboord
  (setq dogq PT100 )
  (setq PT100 (dog-newpoint "\nGeef linker bovenhoek bovenkant boeiboord :"))
  (setvar "dimlfac" 2)
  ; tekenen van boeiboord
  (setq PT101 (dog-cart PT100 (/ (+ (* (+ VAR3 VAR2 ) 2) VAR0 ) 2) 0))
  (setq PT102 (dog-cart PT100 0 (/ (- VAR4 ) 2)))
  (setq PT103 (dog-cart PT101 0 (/ (- VAR4 ) 2)))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT100 PT101))
  (setq ENT6E0 (entlast))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT101 PT103))
  (setq ENT6E3 (entlast))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT103 PT102))
  (setq ENT6E6 (entlast))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT102 PT100))
  (setq ENT6E9 (entlast))

  ; bovenkant zijwang en kozijn
  (setq PT104 (dog-cart PT102 (/ VAR3 2) 0))
  (setq PT105 (dog-cart PT103 (/ (- VAR3 ) 2) 0))
  (setq PT106 (dog-cart PT104 (/ VAR2 2) 0))
  (setq PT107 (dog-cart PT105 (/ (- VAR2 ) 2) 0))

  ; onderkant zijwang en kozijn
  (setq PT108 (dog-cart PT104 0 (/ (- VAR1 ) 2)))
  (setq PT109 (dog-cart PT106 0 (/ (- VAR1 ) 2)))
  (setq PT110 (dog-cart PT107 0 (/ (- VAR1 ) 2)))
  (setq PT111 (dog-cart PT105 0 (/ (- VAR1 ) 2)))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT104 PT108))
  (setq ENT716 (entlast))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT106 PT109))
  (setq ENT719 (entlast))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT107 PT110))
  (setq ENT71C (entlast))
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT105 PT111))
  (setq ENT71F (entlast))

  ; onderlijn onderkant kozijn
  (Dog-Layer-Set "TEKEN" 7 "CONTINUOUS" )
  (dog-poly (list  PT108 PT111))
  (setq ENT722 (entlast))

  ; tekenen van lood onder kozijn
  (setq PT112 (dog-cart PT108 0 30))
  (setq PT113 (dog-cart PT112 (- 150) 0))
  (setq PT114 (dog-cart PT113 0 (- 150)))
  (setq PT115 (dog-cart PT111 0 30))
  (setq PT116 (dog-cart PT115 150 0))
  (setq PT117 (dog-cart PT116 0 (- 150)))
  (Dog-Layer-Set "CENTER" 1 "CENTER" )
  (dog-poly (list  PT112 PT113 PT114 PT117 PT116 PT115))
  (setq ENT81A (entlast))

  ; maatvoering kozijnen zijwang
  (setq PT118 (dog-cart PT108 0 (- (+ (* 7 (getvar "dimscale")) 120))))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT108 PT109 PT118 nil)
  (setq ENT823 (entlast))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT109 PT110 PT118 nil)
  (setq ENT97C (entlast))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT110 PT111 PT118 nil)
  (setq ENTA19 (entlast))

  ; tekst lood onder kozijn
  (setq PT119 (dog-cart PT109 (/ (distance PT109 PT110) 2) (- 100)))
  (Dog-Layer-Set "TEKST" 2 "CONTINUOUS" )
    (dog-text "bc" PT119 (* 3 (getvar "dimscale")) 0 "lood 20 Kg/m2  (" aantalloodstukken 0 "/" lengteloodstuk 0 ")" )
  (setq ENTB34 (entlast))

  ; tekst kozijnmaat
  (setq PT120 (dog-cart PT119 0 (- (+ (* 12 (getvar "dimscale")) 20))))
  (Dog-Layer-Set "TEKST" 2 "CONTINUOUS" )
    (dog-text "bc" PT120 (* 3 (getvar "dimscale")) 0 "kozijnmaat" nil 0 "" nil 0 "" )
  (setq ENTAF0 (entlast))

  ; maatvoering overstek en dakkapelmaat
  (setq PT121 (dog-cart PT118 0 (- (* 12 (getvar "dimscale")))))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT102 PT108 PT121 nil)
  (setq ENTAF8 (entlast))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT108 PT111 PT121 nil)
  (setq ENTB0C (entlast))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT111 PT103 PT121 nil)
  (setq ENTB20 (entlast))

  ; horizontale maatvoering maat lood buiten kozijn 300mm links
  (setq PT122 (dog-cart PT112 0 (* 5 (getvar "dimscale"))))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT113 PT112 PT122 nil)
  (setq ENTB42 (entlast))

  ; horizontale maatvoering maat lood buiten kozijn 300mm rechts
  (setq PT123 (dog-cart PT115 0 (* 5 (getvar "dimscale"))))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "H" PT115 PT116 PT123 nil)
  (setq ENTB56 (entlast))

  ; tekst merk kozijn
  (setq PT124  (DOG-MID PT107 PT109 ))
  (Dog-Layer-Set "GREEN" 3 "CONTINUOUS" )
    (dog-text "mc" PT124 (* 3 (getvar "dimscale")) 0 "MERK " nil 0 "" nil 0 "" )
  (setq ENTB6F (entlast))

  ; maatvoering vertikaal kozijnmaat
  (setq PT125 (dog-cart PT113 (- (* 10 (getvar "dimscale"))) 0))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "V" PT108 PT104 PT125 nil)
  (setq ENTB7D (entlast))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "V" PT102 PT100 PT125 nil)
  (setq ENTB91 (entlast))

  ; maatvoering vertikaal dakkapel
  (setq PT126 (dog-cart PT125 (- (* 7 (getvar "dimscale"))) 0))
  (Dog-Layer-Set "BEMATING" 1 "CONTINUOUS" )
    (dog-dim3 "V" PT108 PT100 PT126 nil)
  (setq ENTBA5 (entlast))

  ; cirkel met detailnummer B
  (setq PT127 (dog-cart PT105 (- (* 20 (getvar "dimscale"))) 0))
  (setq PT128 (dog-cart PT105 (* 7 (getvar "dimscale")) (- (* 15 (getvar "dimscale")))))
  (setvar "celtype" "CENTER")
  (Dog-Layer-Set "BLUE" 5 "CONTINUOUS" )
      (dog-circle  PT105 PT127 )
  (setq ENT190E (entlast))
  (setvar "celtype" "BYLAYER")
  (Dog-Layer-Set "GREEN" 3 "CONTINUOUS" )
    (dog-text "bc" PT128 (* 7.5 (getvar "dimscale")) 0 "B" nil 0 "" nil 0 "" )
  (setq ENT1D1D (entlast))

  ; tekenen van losse loodstroken boven dakkapel
  (setq PT129 (dog-cart PT100 0 100))
  (setq PT130 (dog-cart PT129 0 75))
  (setq PT131 (dog-cart PT129 250 0))
  (setq PT132 (dog-cart PT130 250 0))
  (Dog-Layer-Set "CENTER" 1 "CENTER" )
  (dog-poly (list  PT129 PT131 PT132 PT130 PT129))
  (setq ENT2334 (entlast))
  (setq PT133 (dog-cart PT101 0 100))
  (setq PT134 (dog-cart PT133 0 75))
  (setq PT135 (dog-cart PT133 (- 250) 0))
  (setq PT136 (dog-cart PT134 (- 250) 0))
  (Dog-Layer-Set "CENTER" 1 "CENTER" )
  (dog-poly (list  PT133 PT134 PT136 PT135 PT133))
  (setq ENT2337 (entlast))

  ; tekst loodstroken boven dakkapel
  (setq PT137  (DOG-MID PT131 PT135 ))
  (setq PT138 (dog-cart PT131 0 (* 5 (getvar "dimscale"))))
  (setq PT139 (dog-cart PT135 0 (* 5 (getvar "dimscale"))))
  (setq PT140 (dog-cart PT137 0 (* 5 (getvar "dimscale"))))
  (Dog-Layer-Set "RED" 1 "CONTINUOUS" )
  (dog-poly (list  PT138 PT139))
  (setq ENT252A (entlast))
  (Dog-Layer-Set "TEKST" 2 "CONTINUOUS" )
    (dog-text "bc" PT137 (* 3 (getvar "dimscale")) 0 "los meeleveren" nil 0 "" nil 0 "" )
  (setq ENT252D (entlast))
  (Dog-Layer-Set "TEKST" 2 "CONTINUOUS" )
    (dog-text "bc" PT140 (* 3 (getvar "dimscale")) 0 "lood 20 Kg/m2 2/500" nil 0 "" nil 0 "" )
  (setq ENT2530 (entlast))

  ; tekenen van stadsuitloop rechterzijde dakkapel
  (setq PT141 (dog-cart PT101 0 (- 30)))
  (setq PT142 (dog-cart PT141 0 (- 30)))
  (setq PT143 (dog-cart PT141 75 0))
  (setq PT144 (dog-cart PT142 75 0))
  (setq PT145 (dog-cart PT144 (- 10) 0))
  (setq PT146 (dog-cart PT145 (- 40) 0))
  (setq PT147 (dog-cart PT145 0 (- 10)))
  (setq PT148 (dog-cart PT146 0 (- 10)))
  (Dog-Layer-Set "RED" 1 "CONTINUOUS" )
  (dog-poly (list  PT141 PT143 PT144 PT142))
  (setq ENT273B (entlast))
  (Dog-Layer-Set "RED" 1 "CONTINUOUS" )
  (dog-poly (list  PT145 PT147 PT148 PT146))
  (setq ENT2954 (entlast))

  ; tekst hemelwaterafvoer
  (setq PT149 (dog-cart PT143 (- 15) (- 15)))
  (setq PT150 (dog-cart PT149 (* 65 (getvar "dimscale")) 0))
  (setq PT151 (dog-cart PT150 0 (- (* 5 (getvar "dimscale")))))
  (setq PT152 (dog-cart PT151 0 (- (* 5 (getvar "dimscale")))))
  (Dog-Layer-Set "RED" 1 "CONTINUOUS" )
  (dog-poly (list  PT149 PT150))
  (setq ENT2D75 (entlast))
  (Dog-Layer-Set "TEKST" 2 "CONTINUOUS" )
    (dog-text "br" PT150 (* 3 (getvar "dimscale")) 0 "HEMELWATERAFVOER" nil 0 "" nil 0 "" )
  (setq ENT2B67 (entlast))
  (Dog-Layer-Set "TEKST" 2 "CONTINUOUS" )
    (dog-text "br" PT151 (* 3 (getvar "dimscale")) 0 "leveren en aanbrengen" nil 0 "" nil 0 "" )
  (setq ENT2F91 (entlast))
  (Dog-Layer-Set "TEKST" 2 "CONTINUOUS" )
    (dog-text "br" PT152 (* 3 (getvar "dimscale")) 0 "door aannemer" nil 0 "" nil 0 "" )
  (setq ENT2F94 (entlast))

  ; tekst detailnummer c
  (setq PT153 (dog-cart PT115 (- 150) (/ (distance PT105 PT115) 3)))
  (setq PT154 (dog-cart PT153 275 0))
  (setvar "celtype" "CENTER")
  (Dog-Layer-Set "BLUE" 5 "CONTINUOUS" )
  (dog-poly (list  PT153 PT154))
  (setq ENT31BB (entlast))
  (setvar "celtype" "BYLAYER")
  (Dog-Layer-Set "GREEN" 3 "CONTINUOUS" )
    (dog-text "br" PT154 (* 7.5 (getvar "dimscale")) 0 "C" nil 0 "" nil 0 "" )
  (setq ENT31BF (entlast))

  ; tekst detailnummer 53
  (setq PT155 (dog-cart PT117 (- 350) 60))
  (setq PT156 (dog-cart PT117 150 60))
  (setq PT157 (dog-cart PT156 0 50))
  (setq PT158 (dog-cart PT156 0 150))
  (setq PT159 (dog-cart PT156 60 50))
  (setq PT160 (dog-cart PT156 (- 25) 0))
  (setvar "celtype" "CENTER")
  (Dog-Layer-Set "BLUE" 5 "CONTINUOUS" )
  (dog-poly (list  PT155 PT156 PT158 PT159 PT157))
  (setq ENT31DD (entlast))
  (setvar "celtype" "BYLAYER")
  (Dog-Layer-Set "GREEN" 3 "CONTINUOUS" )
    (dog-text "br" PT160 (* 7.5 (getvar "dimscale")) 0 "53" nil 0 "" nil 0 "" )
  (setq ENT341B (entlast))

  ; tekst getekend dakkapel
  (setq PT161 (dog-cart PT121 0 (- (* 15 (getvar "dimscale")))))
  (Dog-Layer-Set "GREEN" 3 "CONTINUOUS" )
    (dog-text "bl" PT161 (* 3 (getvar "dimscale")) 0 "x ALS GETEKEND bouwno: " nil 0 "" nil 0 "" )
  (setq ENT3891 (entlast))

  ; tekst gespiegeld dakkapel
  (setq PT162 (dog-cart PT161 0 (- (* 5 (getvar "dimscale")))))
  (Dog-Layer-Set "GREEN" 3 "CONTINUOUS" )
    (dog-text "bl" PT162 (* 3 (getvar "dimscale")) 0 "x ALS GESPIEGELD bouwno: " nil 0 "" nil 0 "" )
  (setq ENT3899 (entlast))
  (setvar "dimlfac" 1)

  (setvar "attdia" 0 )
  (setq file "DOG3VAR")
  (command "_layer" "_s" "DOG" "" )
(dog-drvar PT100 -950.0000 0.0000 20.0000 "VAR0" "Breedte kozijnmaat" (rtos VAR0 2))
  (dog-checklink (entlast))
(dog-drvar PT100 -950.0000 -150.0000 20.0000 "VAR1" "Hoogte kozijnmaat" (rtos VAR1 2))
  (dog-checklink (entlast))
(dog-drvar PT100 -950.0000 -300.0000 20.0000 "VAR2" "Dikte zijwang (excl. binnenplaat)" (rtos VAR2 2))
  (dog-checklink (entlast))
(dog-drvar PT100 -950.0000 -450.0000 20.0000 "VAR3" "Overstek buiten zijwang" (rtos VAR3 2))
  (dog-checklink (entlast))
(dog-drvar PT100 -950.0000 -600.0000 20.0000 "VAR4" "Hoogte boeiboord" (rtos VAR4 2))
  (dog-checklink (entlast))
  (command "_insert" "dog3tag"  (trans pt100 0 1)  8.0000 8.0000 0 dogcurrent )
  (dog-tagging)
  (dog-end)
(setvar "osmode" oldsnap)
);defun


kan iemand mij helpen? normaal moeten de functies:

in het begin
(setq oldsnap (getvar "osmode"))

op het einde
(setvar "osmode" oldsnap)

toch voldoende zijn?

groeten

sam
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: Reinier op wo 04 04 2007, 14:58:43
Vlgs mij heb je veelsteveeel tekens.... ;-)  :shock: :shock:

Hier snap ik niks van, maar wel degelijk zijn hier mensen die je kunnen helpen.

Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: fcbsam op wo 04 04 2007, 15:01:48
de lisp tekent een dakkappel uit. De routine is gescreven geweest door hsb-cad. Jullie wellicht bekent.
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: HofCAD op wo 04 04 2007, 18:33:35
Citaat van: fcbsam op wo 04 04 2007, 14:28:54
als ik deze lisp routine run dan wil hij de oude snap settings niet opnieuw instellen. Ziet er iemand de fout?
in het begin
(setq oldsnap (getvar "osmode"))
op het einde
(setvar "osmode" oldsnap)
toch voldoende zijn?
groeten sam

Beste Sam,

Waarschijnlijk wordt in een andere procedure de variabele oldsnap veranderd.
Test dat door bijv. de variabele naam  oldsnap te veranderen in oldsnapnew in
de opdracht (setq oldsnap (getvar "osmode")) en in de opdracht (setvar "osmode" oldsnap)


Ook kan het zijn dat je eerder uit je programma loopt.
Test dat door na (setvar "osmode" oldsnap) , of na bovenstaande wijziging
(setvar "osmode" oldsnapnew), een uitvoeropdracht te zetten
(print (strcat "Einde is gehaald en de oldsnap waarde is " (itoa oldsnap)))
of na bovenstaande wijziging
(print (strcat "Einde is gehaald en de oldsnap waarde is " (itoa oldsnapnew)))

Verder kan het zijn, omdat dgfKozijnzicht-01  waarschijnlijk een subprocedure is,
je via een hoofdprocedure van Lisp terugkeert naar AutoCAD.
Test alle hoofd- en subprocedures met zoeken in Wordpad op het aantal
keer dat het woord oldsnap daarin voorkomt.

Met vriendelijke groet,
HofCAD CSI
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: bart op do 05 04 2007, 07:39:15
ik zie zo in de hele lisp geen enkele wijziging van je osmode instelling.
dus ik snap beide regels niet zo :?

Ik ben het met hofcad eens dat e.a waarschijnlijk komt door gebruik van globale variabele

er kunnen twee dingen gebeuren
1 de variabele oldsnap wordt elders opnieuw ingesteld.
2 osmode wordt elders opnieuw ingesteld en in deze routine krijgt oldsnap dan de daar toegekende waarde.

tip probeer het eerst eens met voor beide regels een ; zodat ze zijn uitgeschakeld.
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: fcbsam op do 12 04 2007, 08:24:07
Ik heb de naam veranderd en er gebeurde niets. Daarna heb ik, (print (strcat "Einde is gehaald en de oldsnap waarde is " (itoa oldsnapnew))) na mijn opdracht geplaatst en dan kreeg ik dit te lezen op mijn commandoregel:

"Einde is gehaald en de oldsnap waarde is 0" _layer
Current layer:  "0"

waar komt nu die layer vandaan? :?

ik ga nu wat voort zoeken...
weet iemand raad?
is het nu aan een bovenliggende routine gelegen?

groeten Sam
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: WebRacer op ma 16 04 2007, 12:03:27
Beste,

als ik mijn oog even op de lisp werp... dan zie ik daar --> (dog-begin) en op het einde -->(dog-end)
Uit eigen ervaring voel ik dat hier een variable-remember-routine achter schuilt... dan helpen uw 2 toegevoegde lijnen niet.
Ik kan u ook niet echt aanraden deze uit te schakelen, aan gezien daar meestal meer achter zit dan enkel opslaan van variabelen, maar ook bv. een error-trap enz...
Doch zou ik deze even tijdelijk uitschakelen door een ';' voor te plaatsen en dan te kijken of hij uw regels wel in acht neemt, zijnde (setq oldsnap (getvar "osmode")) en(setvar "osmode" oldsnap).
Als ik gelijk heb ben je beter naar een basis.lsp of zo te zoeken naar de subroutine (dog-begin) of/en (dog-end)...

laat het ons eens weten
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: Kenny H op di 17 04 2007, 19:30:54
Volgens mij staat er in die andere programma's juist hetzelfde. (setq oldsnap (getvar "osmode")) staat in uw hoofd programma.
Als dit in uw andere programma's ook eens zou voorkomen dan wordt uw vorige waarde overschreven.
Verander eens in uw hoofdprogramma die OLDsnap door OUDEsnap.  :wink:
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: fcbsam op vr 27 04 2007, 14:16:03
ja ik had het nadat ik deze post had gezet ook opgemerkt dat het t.o.v. (dog-begin/dog -end) verkeerd stond en het hielp niet. Ik heb ook  die naam veranderd in allerlei andere namen buiten oldsnap en niet werkt. Ik weet niet hoe het komt maar er veranderd niets. Het veranderd telkens naar de standaard waarden die in een andere lsp beschreven staan. DOG3.lsp en als ik hier de osmode verander in hetgene dat ik wil dan doet hij dat zo wel

greetz
Titel: Re: OSMODE settings: Ik verlies tekens mijn snap settings
Bericht door: Kenny H op za 28 04 2007, 12:50:30
Ik denk dat ik heb gevonden hoe het kom dat die osmode niet verandert.

  (setq dogtag (entlast))
  (dog-begin)
  (command "_layer" "_m" "DOG" "" )
  (setq dogqqqv nil)
  (setq oldsnap (getvar "osmode"))

Als in het programme dog-begin uw snap op 0 worden gezet en erna oldsnap op de waarde krijgt , is die nl ook 0.

  (dog-end)
(setvar "osmode" oldsnap)

Opt einde staat alles wel goed.
Dus wat jij in feite moest doen is:

  (setq dogtag (entlast))
  (setq oldsnap (getvar "osmode"))
  (dog-begin)
  (command "_layer" "_m" "DOG" "" )
  (setq dogqqqv nil)

Die oldsnap moet zijn gegevens halen vooralleer er iets getekend wordt waarbij de snap bv op 0 staat.
Best is uw gegevens die ge wilt behouden, curren layer, snap setting enz dit op de eerste regels te programmeren.
Om deze gegevens terug te willen moet ge ze volledig op he einde van het programma plaatsen.


Ps: Had er vorige keer ni zo goed naar gekeken.

Mvg

Kenny