yoin

silverster

Weet iemand ofdat het mogelijk is om gesloten polylijnen of hatches bij elkaar op te tellen zodat ik een totale omtrek krijg van de verschillende omtrekken?

alvast bedankt

silverster

Heeft dan niemand een oplossing voor deze uitdaging?

EddyBeerke

Hier is ie in VBA:


Option Explicit
Dim ssetObj As AcadSelectionSet

Private Sub acSelOS()

  On Error GoTo DelSet

SetSets:
  Set ssetObj = ThisDrawing.SelectionSets.Add("SSET")
    ssetObj.SelectOnScreen
 
Exit Sub
DelSet:
  ThisDrawing.SelectionSets.Item("SSET").Delete
GoTo SetSets
End Sub


Sub TotOppvlPoly()
Dim Obj As AcadObject
Dim I, ii
Dim Opp As Double
  acSelOS
  I = 0
  ii = 0
  For Each Obj In ssetObj

    If Obj.ObjectName = "AcDbPolyline" Then
      Opp = Opp + Obj.Area
      I = I + 1
    Else
      ii = ii + 1
    End If
  Next
  MsgBox "Totaal van " & I & " polylijnen = " & Opp & Chr(13) & _
         "Aantal andere objecten = " & ii
 
End Sub
Civil3d 2026, Blender 4.x gebruiker
Gebruiker sinds AutoCAD R12

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

Reimer

Terwijl EddyBeerke aan het typen was maakte ik het volgende bericht:

Als ik het goed begrijp wil je dus de opgetelde lengte van de polylijnen weten? (de som van de omtrekken)
Hiervoor bestaan verschillende lisproutines. Als je op dit forum zoekt op LENGTES dan vindt je wel wat. Of kijk even naar dit onderwerp: http://www.cadsite.be/smf/index.php/topic,1741.msg9143.html#msg9143

Reimer

EddyBeerke

Tja...
Soms ook leuk om eens een VBA-tje te spammen!
Civil3d 2026, Blender 4.x gebruiker
Gebruiker sinds AutoCAD R12

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

silverster

Citaat van: Reimer op wo 25 02 2009, 08:06:29
Terwijl EddyBeerke aan het typen was maakte ik het volgende bericht:

Als ik het goed begrijp wil je dus de opgetelde lengte van de polylijnen weten? (de som van de omtrekken)
Hiervoor bestaan verschillende lisproutines. Als je op dit forum zoekt op LENGTES dan vindt je wel wat. Of kijk even naar dit onderwerp: http://www.cadsite.be/smf/index.php/topic,1741.msg9143.html#msg9143

Reimer

sorry ik heb de vraag verkeerd gesteld ik wilde graag de oppervlaktes van de polylijnen bij elkaar optellen.

de lisp van lengtes had ik al en die telt inderdaad alle lengtes op dus de omtrek.

EddyBeerke

Citaat van: silverster op wo 25 02 2009, 11:33:51
sorry ik heb de vraag verkeerd gesteld ik wilde graag de oppervlaktes van de polylijnen bij elkaar optellen.

de lisp van lengtes had ik al en die telt inderdaad alle lengtes op dus de omtrek.

Had ik het toch goed begrepen want mijn VBA doet wat je eigenlijke vraag had moeten zijn n.l.:
Het optellen van oppervlaktes.
Civil3d 2026, Blender 4.x gebruiker
Gebruiker sinds AutoCAD R12

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

silverster

Citaat van: EddyBeerke op wo 25 02 2009, 12:02:29
Citaat van: silverster op wo 25 02 2009, 11:33:51
sorry ik heb de vraag verkeerd gesteld ik wilde graag de oppervlaktes van de polylijnen bij elkaar optellen.

de lisp van lengtes had ik al en die telt inderdaad alle lengtes op dus de omtrek.

Had ik het toch goed begrepen want mijn VBA doet wat je eigenlijke vraag had moeten zijn n.l.:
Het optellen van oppervlaktes.

en hoe laad ik deze in?

is dat toevallig via excel?

EddyBeerke

Citaat van: silverster op wo 25 02 2009, 13:20:29
...
en hoe laad ik deze in?

is dat toevallig via excel?

Nee dat doe je op de volgende manier:
CiteerVoor de meelezers: Ik werk met Acad 2007, dus ik kan het alleen voor deze versie uitleggen en als er veranderingen in nieuwere versies zijn dan graag ook even posten aub
Type het commando: "VBAMAN"
In het venster dat je nu krijgt kies je voor: "New"

Nu sluit je dit venster en open je "Visual Basic" (VB) door op "Alt+F11" te durkken.
Kies nu in het menu van VB: Insert... module.
In het "tekst venster" wat nu open staat plak je één voor één de code die in mijn eerdere bericht staat.(het zijn drie stukjes code!)
Let wel dat de tekst "Option Explicit" boven aan staat en niet twee keer voor komt!

Nu kun je de macro starten door op "Alt+F8" te drukken.
Kies in het venster voor: "TotOppvlPoly" en klik op "Run"
Voor een button in acad kun je dit commando gebruiken:
Citeer-vbarun TotOppvlPoly

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

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

HofCAD

#9
Citaat van: silverster op wo 25 02 2009, 11:33:51
Weet iemand ofdat het mogelijk is om gesloten polylijnen of hatches bij elkaar op te tellen zodat ik een totale omtrek krijg van de verschillende omtrekken?

alvast bedankt
Citaat van: Reimer op wo 25 02 2009, 08:06:29
Terwijl EddyBeerke aan het typen was maakte ik het volgende bericht:

Als ik het goed begrijp wil je dus de opgetelde lengte van de polylijnen weten? (de som van de omtrekken)
Hiervoor bestaan verschillende lisproutines. Als je op dit forum zoekt op LENGTES dan vindt je wel wat. Of kijk even naar dit onderwerp: http://www.cadsite.be/smf/index.php/topic,1741.msg9143.html#msg9143

Reimer

sorry ik heb de vraag verkeerd gesteld ik wilde graag de oppervlaktes van de polylijnen bij elkaar optellen.

de lisp van lengtes had ik al en die telt inderdaad alle lengtes op dus de omtrek.

Beste Silvester,

Voor de Oppervlakte van een Hatch moet je kijken naar:
http://www.cadsite.be/smf/index.php/topic,951.msg9441.html#msg9441
of http://www.autocadexchange.com/forum/list_messages/1793
en naar de behorende waarschuwing:
http://www.cadsite.be/smf/index.php/topic,2662.0.html

Met vriendelijke groet, HofCAD CSI



ACADcadabra

Matthias

Citaat van: silverster op wo 25 02 2009, 11:33:51
Citaat van: Reimer op wo 25 02 2009, 08:06:29
Terwijl EddyBeerke aan het typen was maakte ik het volgende bericht:

Als ik het goed begrijp wil je dus de opgetelde lengte van de polylijnen weten? (de som van de omtrekken)
Hiervoor bestaan verschillende lisproutines. Als je op dit forum zoekt op LENGTES dan vindt je wel wat. Of kijk even naar dit onderwerp: http://www.cadsite.be/smf/index.php/topic,1741.msg9143.html#msg9143

Reimer

sorry ik heb de vraag verkeerd gesteld ik wilde graag de oppervlaktes van de polylijnen bij elkaar optellen.

de lisp van lengtes had ik al en die telt inderdaad alle lengtes op dus de omtrek.

Hallo

Ik dacht dat je dit gewoon kon doen met 'area' dan 'add' en dan 'objects' (zoveel aanklikken als je maar wenst)?

Mvg
Landschaps- en tuinarchitect

silverster

Bedankt voor alle antwoorden, we hebben het opgelost dus deze kan gesloten gaan worden