FastFiber

Help bij meerdere tekeningen met lisp inlezen

Gestart door cumen, ma 06 02 2012, 20:21:30

Vorige topic - Volgende topic

cumen

Hallo,

Ben nieuw in dit forum en heb gelijk ook een vraag.
Ik ben bezig om een bestaande lisp aan te passen.
Deze (opende) in een map op de C schijf (c:\acaddxf) meerdere tekeningen in een keer op een layout.
Maar de lisp moet nu naar meerdere variabel in de locatie zoeken deze variëren elke keer.
Bijvoorbeeld: C:\archief\123456(dit is een variabele nummer)\aanzichttekeningen\*.dxf files (meerdere dxf tekeningen deze moeten dus ingelezen worden).

Hoe kan ik de code voor de variabele ondernummers opgeven dat de lisp dit elke keer vraagt?

Al wast bedankt voor jullie moeite.

Groetjes.

roy_043

Zoiets:
(setq proj (getstring T "\nProject: "))
(setq map (strcat "C:\\archief\\" proj "\\aanzichttekeningen\\"))

cumen

#2
Roy,

Bedankt voor je hulp.
Het lukt nog niet helemaal, lisp vraagt nu naar project maar leest nog niet de tekeningen.
is eer ook een lisp voor om meerdere tekeningen in een keer in te lessen?
Heb dxf tekeningen in een map, deze hebben altijd de zelfde bestandsnaam (00001.dxf, 00002.dxf, 00003.dxf ect.) maar de project nummer is variabel.
Ik wil deze dxf tekeningen in een tekening inlezen.


Al vast bedankt,


roy_043

Citaat van: cumen op ma 06 02 2012, 20:21:30
Deze (opende) in een map op de C schijf (c:\acaddxf) meerdere tekeningen in een keer op een layout.
Uit jouw eerste bericht concludeer ik dat jouw 'oude' lisp al in staat is meerdere tekeningen te openen. Het is waarschijnlijk een goed idee als je de originele lisp post.

cumen


roy_043

Het lisp programma is afhankelijk van diverse paden. Ik vermoed dat bepaalde paden niet bestaan of verkeerde bestanden bevatten. Om dit te controleren:
Vervang regel 111:
(if (findfile FileIn)
Door:
(if (print (findfile FileIn))
Probeer het programma opnieuw en kijk naar de meldingen op het scherm. Tref je hier NIL aan dan worden bestanden niet gevonden.

Het bestand dat je hebt bijgevoegd is overigens het GEWIJZIGDE bestand en niet het ORIGINELE.

cumen

beste Roy,

Dit is het origineel lisp.
Allen dit regel is nu variabel (setq BrnMap_ "C:\\acaddxf\\")
Hier moet lisp naar verschillende mappen (ordernummers vragen)

Zoals nu de lisp is worden alle de tekeningen ingellezen in een blad.

M.v.g.

Cumen

roy_043

De instructies uit mijn vorige bericht a.u.b. uitvoeren.

cumen

Beste Roy,


Ik wil je eerst bedanken voor je hulp.
heb het voor elkaar heb de text van jou vervangen met setq BrnMap en ja het werkt.
   (setq Archief_ "C:\\archief\\")
(setq proj (getstring T "\nProject: "))
(setq BrnMap_ (strcat "C:\\test\\" proj "\\aanzichttekeningen\\"))

Groetjes Cumen,

roy_043

Aha, je had (strcat ...) niet overgenomen... Was mij nog niet opgevallen.

cumen

Roy,

is eer ook een lisp voor tekeningen in te lezen?

EddyBeerke

Civil3d 2026, Blender 4.x gebruiker
Gebruiker sinds AutoCAD R12

http://eddylucas.c1.biz/
https://www.google.com/maps/contrib/109381066561676463628/photos/

roy_043

Citaat van: EddyBeerke op do 09 02 2012, 23:46:37
Zoek even naar BaBe op deze site.
@ Cumen: Dit advies van Eddy is goed als je inderdaad een lisp wilt toepassen op meerdere dwgs. Maar het is de vraag of dat jouw bedoeling is. Kortom: er is iets meer uitleg nodig.

cumen

Ik heb BaBe geprobeerd maar bij mij werkt het niet krijg het volgende melding in Acad 2011.

Command: _appload BaBe.lsp successfully loaded.
Command: babe
; error: ARXLOAD failed

Heb ook de DOSLib18.arx geprobert maar krijg het niet voor elkaar.
Ik wil meerdere dxf bestanden in lezen op een blad (zie bijlage).




roy_043

Citaat van: cumen op vr 10 02 2012, 22:01:17
Ik wil meerdere dxf bestanden in lezen op een blad
Hiervoor is BaBe niet bedoeld. Jij wilt namelijk een lisp toepassen op één dwg.

yoin