FastFiber

Handig?

Gestart door reneke, zo 10 05 2009, 22:10:59

Vorige topic - Volgende topic

reneke

Laat eens weten wat jullie hiervan vinden:
http://www.rschepers.com/index.php?option=com_content&task=blogsection&id=4&Itemid=26

Heb een hele partij lisp hier liggen die net iets verder gaan dan de gebruikelijke simpele routines die je doorgaans op internet vindt. Maar het is meer werk dan gedacht om ze netjes te publiceren. Daarom wil ik eerst weten wat jullie ervan vinden.

Gr,
Rene

WebRacer

een goed begin.
leuk dat je alles probeert goed uit te leggen.
?

roy_043

Beste Rene,

Fijn dat je jouw lisp-functies wilt delen! De filmpjes zijn leuk maar soms is een leesmij.txt handiger.

Mijn ervaringen met jouw downloads:

  • SCC.lsp
    Not Found. Niet getest.

  • Layers and Holes
    GlobalLispConfig.txt zit niet in de zip. Niet Getest.

  • dilute.lsp
    Werkt (op Bricscad 7) maar is een vreemde functie. De gebruiker heeft geen controle over welke elementen worden gewist. Dit is zowel afhankelijk van de selectievolgorde als de tekenvolgorde.

  • ea.lsp
    :vreegoe: Werkt (op Bricscad 7) en is zeer interessant. Jammer dat er maar 8 attributen kunnen worden ingevoerd.

Groet, Roy.

reneke

heb snel even globallispconfig.txt toegevoegd en de link naar scc.lsp gerepareerd.

gr,
rene

WebRacer

ik kende dat commando van ergens... EA.
ik vond dit terug onder het stof.. in jaren niet meer gebruikt.

Onbeperk aantal attributen... schermafmetingen zorgen voor de limiet...
?

reneke

Citaat van: WebRacer op ma 11 05 2009, 14:48:19
ik kende dat commando van ergens... EA.
ik vond dit terug onder het stof.. in jaren niet meer gebruikt.

Onbeperk aantal attributen... schermafmetingen zorgen voor de limiet...

Handig programma, meteen alle waarden in zicht zonder 'next' te hoeven drukken.
Toch is de insteek anders dan mijn ea. Die is voornamelijk bedoeld als je dezelfde (project)waarden in verschillende tekeningen wil invoeren.

WebRacer

ook dat zegt mij iets....
ik heb dat ooit eens gemaakt voor een klant die telkens 4 layout's had met titelblaren.
de uitbouw was:
1 keer alles invullen, er werd zelfs een txt-file gemaakt in de map met de tekeningen voor latere wijzigingen.
de schaal van haalde het progje van de viewports, daar moest je niet mee inzitten.
was makkelijk maar nadien nooit meer gebruikt
?

roy_043

Citaat van: WebRacerik kende dat commando van ergens... EA. ik vond dit terug onder het stof..
WebRacer kun je de broncode ook posten?

Beste Rene,

Het vervolg van mijn ervaringen met jouw downloads:

SCC.lsp
Werkt (in Bricscad 7). Het is nu nodig om de huidige diameter van de cirkels op te geven. Het lijkt mij handig als ook alle geselecteerde cirkels (dus ongeacht de huidige diameter) gewijzigd kunnen worden.

Layers and Holes
Deze functies werken niet zonder meer in Bricscad 7. De functies vl-* worden niet ondersteund door BC7. Voor BC7 zijn deze "pseudo-vl-functies" in ReadConfig.lsp nodig:

(defun vl-string-search (testchar teststring / place ch)
(setq place 1)
(while (and (/= (setq ch (substr teststring place 1)) testchar) (/= ch ""))
(setq place (1+ place))
)
(setq place (1- place))
(if (= place (strlen teststring))
nil
place
)
)

(defun vl-string-left-trim (char string / )
(trim string "B")
)

(defun vl-string-right-trim (char string / )
(trim string "E")
)

Mogelijk werken de LayersAndHoles-functies hierdoor ook in bijv. Autocad 14.
Opmerkingen:


  • In de zip is sprake van een map personal, in globalLispConfig.txt is sprake van persoonlijk dit is verwarrend.
  • Op regel 25 in globalLispConfig.txt (CONTOUR, pen050, continuous,) is de kleur van de laag vergeten.
  • In ll.lsp moet aan het begin van regel 154 een puntkomma staan (; (INITGET...).
  • Jouw code kan veel efficiĆ«nter. Als ik het commando HoleT gebruik dan wordt de GlobalList 6 keer uit het bestand globalLispConfig.txt geladen. Door gebruik te maken van het feit dat GlobalList toch al een globale variabele is wordt de functie veel sneller. Zie de code hieronder.

...
;; Gebruik deze code op alle plaatsen waar nu "(setq GlobalList (ReadGlobalConfiguration))" staat.
(if (not GlobalList)
(c:ResetGlobalConfiguration)
)
...

(defun c:ResetGlobalConfiguration ( / )
;;; Deze functie moet ook gebruikt worden als globalLispConfig.txt tijdens een tekensessie is aangepast!
(load "readconfig.lsp")
(setq GlobalList (ReadGlobalConfiguration))
(princ "\nGlobalList is loaded. ")
(princ)
)


Conclusie:
:vreegoe: EA.lsp
:vreegoe: :vreegoe: :vreegoe: Layers and Holes


Goed werk dus. Ik ben benieuwd naar het vervolg...

Groet, Roy.

reneke

Roy, bedankt voor de uitgebreide review! Zodra ik tijd heb zal ik jouw punten verwerken.
1) interessant Briscad, kende ik nog niet
2) goeie tip m.b.t. de "pseudo-vl-functies" . Heb je ook de code voor het commando trim? Ach, eigenlijk heb ik die al gebruikt om de tabs eruit te halen.
3) scc.lsp is aangepast, ga ik dalijk uploaden.

Volgende routine wordt QuickPrint. Zal wel volgende week worden.

rene

roy_043

Beste Rene,

Ik kom er net achter dat EA.lsp alle attributen in de tekening naloopt en eventueel wijzigt. Dit is niet handig als je verschillende blocks in de tekening hebt met attributen met dezelfde naam. Een attribuut genaamd "datum" kan bijvoorbeeld in een titelblok (onderhoek) zitten, maar ook in wijzigingspijlen. Omdat de hele tekeningdatabase wordt nagelopen kan de functie bovendien veel tijd in beslag nemen bij grote tekeningen.

Groet, Roy.

reneke

Citaat van: roy_043 op wo 13 05 2009, 13:43:45
Ik kom er net achter dat EA.lsp alle attributen in de tekening naloopt en eventueel wijzigt. Dit is niet handig als je verschillende blocks in de tekening hebt met attributen met dezelfde naam.

Inderdaad, dat is niet handig.

Ideeen voor versie 2 tot dusverre:
  - knop 'read attributes in this drawing'
  - onbeperkt aantal atributen
  - selecteer de blcoken waarvan de attributen gewijzigd moeten worden

Voor nu kun je nieuwe blokken aanmaken met unieke attribnamen, maar dat had je vast zelf al bedacht ;-)

gr,
rene

reneke

Het is een beetje haastwerk geweest maar heb de site bijgewerkt en een paar nieuwe routines toegevoegd (QuickPrint, InitVar, EditBlock, etc). Ben benieuw naar jullie meningen.

rene

roy_043

Beste Rene,

Pas i.i.g. jouw links (min. 2 plaatsen) even aan:
http://www.rschepers.com/data\lisp.zip
moet zijn:
http://www.rschepers.com/data/lisp.zip :mrgreen:

Groet, Roy.

Reimer

Beste Rene,

ik heb even gespeeld met de functie EA en EAS. Bij EAS krijg ik direct na het starten de melding "Cannot find definition for dialog ea". Hierna kan ik niet verder. (misschien nog een term uit EA.lsp).
EA werkt wel gewoon. Ik merkte echter dat autocad blijft hangen wanneer ik op Escape druk als ik het invulscherm wil verlaten. Ik weet niet of dit aan mijn systeem ligt of dat dit bij anderen ook vastloopt?

Reimer.

reneke

#14
Citaat van: Reimer op vr 19 06 2009, 08:04:39ik heb even gespeeld met de functie EA en EAS. Bij EAS krijg ik direct na het starten de melding "Cannot find definition for dialog ea". Hierna kan ik niet verder. (misschien nog een term uit EA.lsp).

Er zat inderdaad een fout in, die is gecorrigeerd. Hier moet ik echter nog meer tijd aan besteden. Waarden met komma of puntkomma zullen niet nml. niet goed gaan

Citaat van: Reimer op vr 19 06 2009, 08:04:39
Ik merkte echter dat autocad blijft hangen wanneer ik op Escape druk als ik het invulscherm wil verlaten. Ik weet niet of dit aan mijn systeem ligt of dat dit bij anderen ook vastloopt?
Heb nog geen vastloper gehad.

Ea.VLX is ook toegevoegd (de reden van de hernoeming van ea.lsp naar eas.lsp)

FastFiber