Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  _area command

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  _area command (1881 mal gelesen)
cadplayer
Ehrenmitglied
CADniker


Sehen Sie sich das Profil von cadplayer an!   Senden Sie eine Private Message an cadplayer  Schreiben Sie einen Gästebucheintrag für cadplayer

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 29. Aug. 2014 10:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo!

Ich habe 2 Problem mit dem Befehl _area
1) wenn ich ihn herkömmlich verwende, um Flächen abzugreifen erscheint normalerweise nachdem ich drei Punkte ausgewählt habe mit <enter> die Grösse der Fläche.
Das Problem bei einem Kollegen, er kann endlos viele Punkte abgreifen bekommt aber nie die Möglichkeit mit <enter> die Fläche auzuwerfen.

Seinen file habe ich an meinem Rechner getestet, läuft bei mir. Öffnet er einen neuen file, funktioniert es auch normal.

2) Jetzt habe ich mal versucht den Befehl nachzuahmen, indem ich eine Polylinie erzeugt und dann mittels _area die Fläche zu bekommen

Ich habe festgestellt, dass es auch hier ein Problem gibt
Gebe ich mal händisch den Befehl
(command "_area" "_o" (entlast)) ... geht klar


Code:
Command: (entget (entlast))
((-1 . <Entity name: 7ffff2ce540>) (0 . "POLYLINE") (330 . <Entity name: 7ffffb039f0>) (5 . "3D65C") (100 . "Ac...

Geb ich aber das PolyObjekt aus meiner Liste PoLst an kommt
(command "_area" "_o" (caar PoLst) "")
nil

Code:
Command: (entget (caar PoLst))
((-1 . <Entity name: 7ffff2ce540>) (0 . "POLYLINE") (330 . <Entity name: 7ffffb039f0>) (5 . "3D65C") (100 . "AcDbE

zum Testen, hier mal den Code, den ich verwende

Code:
(defun c:foo ( / pt lst seq pol
;;;       PoLst
      )
  (defun LWPolyline ( lst )
  (entmakex
    (list
      (cons 0 "POLYLINE")
      (cons 10 '(0 0 0))
    )
  )
  (mapcar
    (function
      (lambda ( p )
        (entmake (list (cons 0 "VERTEX") (cons 10 p)))
      )
    )
    lst
  )
  (entmakex (list (cons 0 "SEQEND")))
)
 
  (while (and (setq pt (getpoint "\nPick points" )))
    (setq lst (append lst (list pt)))
    (setq seq (LWPolyline lst))
    (setq Pol (entlast))
    (setq PoLst (append PoLst (list (list Pol))))
    )
  (foreach n (cdr (setq PoLst (reverse (vl-remove-if 'vl-symbolp PoLst))))
    (entdel (car n))
    )
  (command "_area" "_o" "" (caar PoLst))
 
  )

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 29. Aug. 2014 11:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für cadplayer 10 Unities + Antwort hilfreich

Sorry,
die Commandzeile sollte dir nie ein Ergebnis liefern(außer der Rückmeldung nil natürlich) und
so gibst du es auch nie an deinem Rechner per Hand ein 

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadplayer
Ehrenmitglied
CADniker


Sehen Sie sich das Profil von cadplayer an!   Senden Sie eine Private Message an cadplayer  Schreiben Sie einen Gästebucheintrag für cadplayer

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 29. Aug. 2014 11:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Problem 2) gelöst!

Code:
(command "_area" "_o" (caar PoLst))
  (princ (strcat "\nArea: " (rtos (GETVAR "AREA") 2 3)))

wie sieht es aus bei der ersten Frage, kennt jemand das Problem?

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

jupa
Ehrenmitglied V.I.P. h.c.
Ruheständler


Sehen Sie sich das Profil von jupa an!   Senden Sie eine Private Message an jupa  Schreiben Sie einen Gästebucheintrag für jupa

Beiträge: 6050
Registriert: 16.09.2004

WINDOWS Vista Ultimate SP2 (64bit), NVIDIA Geforce 9600M GT, AutoCAD 2013.

erstellt am: 29. Aug. 2014 11:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für cadplayer 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von cadplayer:

wie sieht es aus bei der ersten Frage,

Was passiert denn nach ENTER?

Jürgen

------------------
Bildung kommt nicht vom Lesen, sondern vom Nachdenken über das Gelesene. (Carl Hilty)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadplayer
Ehrenmitglied
CADniker


Sehen Sie sich das Profil von cadplayer an!   Senden Sie eine Private Message an cadplayer  Schreiben Sie einen Gästebucheintrag für cadplayer

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 29. Aug. 2014 14:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

problem ist man kann gar nicht enter drücken
Das menu [total] erscheint gar nicht erst

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 29. Aug. 2014 15:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für cadplayer 10 Unities + Antwort hilfreich

Gott sperrt deine Tastatur ? Das ist echt unglaublich.
Ist die Taste ganz weg oder kann man sie nur nicht herunterdrücken ?

Auch wenn der Vorschlag nicht von mir kommt, aber du könntest doch einfach mal machen und dem Frager dann antworten,
ist doch nicht mehr Aufwand wie auf eine nicht gestellte Frage eine Antwort zu posten Dirk.

ICH kann zu dem Thema leider wenig sagen, wenn Rechner+DWG abhängig.. ne, da fällt mir nichts ein/wie soll man da testen.

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 29. Aug. 2014 22:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für cadplayer 10 Unities + Antwort hilfreich

Noch was zur Sache:
Wirklich mit demselben Dateistand getestet? Dann dürfte das nicht weiterhelfen:

_PLAN _CURRENT

_AREA erneut testen..
(die Option wird nur angeboten wenn die Stützpunkte auch eine Fläche bilden)

Und in Richtung Jupa denkend(wobei ich in die Richtung eigentlich nicht denke):
nach dem 3 Stützpunkt einfach mal _t eingeben.

>> die Unterstriche können in der engl. Version freilich weggelassen werden. <<

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

jupa
Ehrenmitglied V.I.P. h.c.
Ruheständler


Sehen Sie sich das Profil von jupa an!   Senden Sie eine Private Message an jupa  Schreiben Sie einen Gästebucheintrag für jupa

Beiträge: 6050
Registriert: 16.09.2004

WINDOWS Vista Ultimate SP2 (64bit), NVIDIA Geforce 9600M GT, AutoCAD 2013.

erstellt am: 30. Aug. 2014 06:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für cadplayer 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von cadplayer:
problem ist ...

Zeig uns doch mal bitte den Inhalt des Textfensters ab Aufruf des _area-Befehles bis nach der Eingabe von mindestens 3 Koordinaten.
Ich kann den Effekt (so ich Deine Beschreibung richtig interpretiere) nur nachstellen, indem ich den Befehl _area ständig mit derselben Koordinate füttere. Vllt. ist in dieser Richtung der Fehler zu suchen?

Seinen file habe ich an meinem Rechner getestet, läuft bei mir. Öffnet er einen neuen file, funktioniert es auch normal.
Passiert das bei ihm nur an einer bestimmten Polylinie oder generell? Was passiert, wenn er Koordinaten über die Tastatur eingibt?

Das menu [total] erscheint gar nicht erst
Fehlt die gesamte Eingabezeile oder nur die Option <total>? Ach, das werden wir ja sehen, falls Du meiner ersten Bitte entsprichst. Oder meinst Du den Eintrag  "total" im Kontextmenü nach RMT (dann bittte auch einen Screenshot dieses Menüs).

problem ist man kann gar nicht enter drücken
Ich hatte erst mal 'ne größere Denkpause, weil ich überlegt habe was ihn daran hindern könnte, einfach die ENTER-Taste zu betätigen.    

Jürgen

------------------
Bildung kommt nicht vom Lesen, sondern vom Nachdenken über das Gelesene. (Carl Hilty)

[Diese Nachricht wurde von jupa am 30. Aug. 2014 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadplayer
Ehrenmitglied
CADniker


Sehen Sie sich das Profil von cadplayer an!   Senden Sie eine Private Message an cadplayer  Schreiben Sie einen Gästebucheintrag für cadplayer

Beiträge: 1832
Registriert: 28.04.2009

erstellt am: 03. Sep. 2014 13:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Sorry Leute!
Dass ich ein wenig undeutlich war, natürlich - ich meinte die Option <Total> erscheint nicht und ich konnte es selber auch nicht weiter nachvollziehen. Weil es an meinem Rechner mit selbigen file einwandfrei lief. Daher habe ich ihm jetzt diesen Code zusammengeklöppelt und er kriegt somit was er will.
Code:
(defun c:ca ( / )
  (defun LWPolyline ( lst )
  (entmakex
    (list
      (cons 0 "POLYLINE")
      (cons 10 '(0 0 0))
    )
  )
  (mapcar
    (function
      (lambda ( p )
        (entmake (list (cons 0 "VERTEX") (cons 10 p)))
      )
    )
    lst
  )
  (entmakex (list (cons 0 "SEQEND")))
)
  (defun PickPoints ( / pt lst seq Pol PoLst)
  (princ "\nPick points, avslutar med <enter>")
  (while (and (setq pt (getpoint  )))
    (setq lst (append lst (list pt)))
    (setq seq (LWPolyline lst))
    (setq Pol (entlast))
    (setq PoLst (append PoLst (list (list Pol))))
    )
    (if Pol
      (progn
(foreach n (cdr (setq PoLst (reverse (vl-remove-if 'vl-symbolp PoLst))))
  (entdel (car n))
  )
(command "_area" "_o" (caar PoLst))
)
      )
    (if PoLst (vla-put-Closed (vlax-ename->vla-object (caar PoLst)) :vlax-true))

    (rtos (GETVAR "AREA") 2 3)
    )
 
  (setq y1 (PickPoints) i 0)
 
  (princ (strcat "\n"(itoa (setq i (1+ i))) ". Yta: +" y1 " m"(chr 178)  ))
  (while
    (not
      (and
(if y1
  (progn
    (setq y2 (PickPoints))
    (princ (strcat "\n"(itoa (setq i (1+ i))) ". Yta: +" y2 " m"(chr 179)  ))
    (princ "\nTotlSumma: ")
    (princ (strcat  "Yta: +" (setq y1 (rtos (+ (distof y1) (distof y2)) 2 3)) " m"(chr 178)  ))
    (setq PoLst nil)
    )
  )
)
      )
    )
 
  (princ)
  )



Danke für Eure Teilnahme, wie gesagt bei mir kam selbiges Problem nie vor.

------------------
Gruss Dirk
http://cadplayerlounge.blogspot.se

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz