<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Ynt: BoundedVolumes Method in Civil 3D Customization Forum</title>
    <link>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10264485#M6809</link>
    <description>&lt;P&gt;As an idea&lt;BR /&gt;You can add an&amp;nbsp;&lt;SPAN&gt;surface boundary&lt;/SPAN&gt; to it&lt;/P&gt;&lt;P&gt;And you inquire about volume&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;http://docs.autodesk.com/CIV3D/2012/ENU/API_Reference_Guide/com/AeccXLandLib__IAeccSurfaceBoundaries.htm&lt;/LI-CODE&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="wwww.JPG" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/911026i66C8C12432693E28/image-size/large?v=v2&amp;amp;px=999" role="button" title="wwww.JPG" alt="wwww.JPG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
    <pubDate>Sat, 24 Apr 2021 04:05:26 GMT</pubDate>
    <dc:creator>hosneyalaa</dc:creator>
    <dc:date>2021-04-24T04:05:26Z</dc:date>
    <item>
      <title>BoundedVolumes Method</title>
      <link>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10262116#M6807</link>
      <description>&lt;P&gt;Hello.&lt;/P&gt;&lt;P&gt;Today i found one very interesting function. And do some research how i can use it in some lisp and i found this method which i think is interesting.&lt;/P&gt;&lt;P&gt;After my research 5-6 hours i cannot find any information how to use it.&lt;/P&gt;&lt;P&gt;I take some info from&amp;nbsp;&lt;STRONG&gt;&lt;A href="http://docs.autodesk.com/CIV3D/2012/ENU/API_Reference_Guide/com/AeccXLandLib__IAeccTinVolumeSurfaceStatistics__BoundedVolumes@%5Bin%5D_VARIANT@%5Bout%5D_double__@%5Bout%5D_double__@%5Bout%5D_double__.htm" target="_blank" rel="external nofollow noopener"&gt;Here&lt;/A&gt;&amp;nbsp;&lt;/STRONG&gt;and try everything i can. Also i try&amp;nbsp;&lt;STRONG&gt;&lt;A href="http://docs.autodesk.com/CIV3D/2012/ENU/API_Reference_Guide/com/AeccXLandLib__IAeccSurface__FindElevationAtXY@%5Bin%5D_double@%5Bin%5D_double@%5Bout,_retval%5D_double_.htm" target="_blank" rel="external nofollow noopener"&gt;This&lt;/A&gt;&amp;nbsp;&lt;/STRONG&gt;because i think this will be more easy.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I attach .dwg and code where is very wrong i think but..&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Other used links:&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.theswamp.org/index.php?topic=31674.0" target="_blank" rel="noopener"&gt;This&lt;/A&gt;&amp;nbsp;and&amp;nbsp;&lt;A href="http://www.lee-mac.com/groupbynum.html" target="_blank" rel="noopener"&gt;This&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="lisp"&gt;(defun LM:group-n ( l n / r )
    (if l
        (cons
            (reverse (repeat n (setq r (cons (car l) r) l (cdr l)) r))
            (LM:group-n l n)
        )
    )
)

(defun gc:3dPointListToVariant (lst)
  (vlax-make-variant
    (vlax-safearray-fill
      (vlax-make-safearray
        vlax-VbDouble
        (cons 0 (1- (* 3 (length lst))))
      )
      (apply 'append lst)
    )
  )
)

(defun c:dd2 (/ selL VnamL VnamS coord inv) 
(setq selL (car (entsel "\nSelect Poly..")))
(setq VnamL (vlax-ename-&amp;gt;vla-object selL))
(setq coord (gc:3dPointListToVariant (LM:group-n (vlax-get VnamL 'coordinates) 3)))
(setq selS (car (entsel "\nSelect volumeSurf..")))
(princ "\n")
(setq VnamS (vlax-ename-&amp;gt;vla-object selS))


(setq inv (vl-catch-all-apply 'vlax-invoke-method (list (vlax-get VnamS 'Statistics) 'BoundedVolumes coord)))
(princ inv)
;(princ (vl-catch-all-error-message inv))
(princ)
)&lt;/LI-CODE&gt;</description>
      <pubDate>Fri, 23 Apr 2021 07:35:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10262116#M6807</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2021-04-23T07:35:57Z</dc:date>
    </item>
    <item>
      <title>Ynt: BoundedVolumes Method</title>
      <link>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10264477#M6808</link>
      <description>&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;I ran it but it doesn't work&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;When determining what I methods and properties I can use with a vla-object I use the following.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Not everything that is IAecc is exposed to the visual lisp environment.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;;;&lt;A href="https://forums.autodesk.com/t5/civil-3d-customization/get-point3d-values-in-property-set/m-p/9436843#M17896" target="_blank"&gt;https://forums.autodesk.com/t5/civil-3d-customization/get-point3d-values-in-property-set/m-p/9436843#M17896&lt;/A&gt;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;(defun c:dmpobj ( / obj)
  (setq obj (vlax-ename-&amp;gt;vla-object (car (entsel))))
  (vlax-dump-object obj T)
  (textpage)
  (vlax-release-object obj)
  )&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;; IAeccTinSurface: IAeccTinSurface interface
; Property values:
;   Application (RO) = #&amp;lt;VLA-OBJECT IAeccApplication 000000005e941950&amp;gt;
;   Boundaries (RO) = #&amp;lt;VLA-OBJECT IAeccSurfaceBoundaries 000000005e7fa008&amp;gt;
;   Breaklines (RO) = #&amp;lt;VLA-OBJECT IAeccSurfaceBreaklines 000000005e7fb088&amp;gt;
;   ContourLabelGroups (RO) = #&amp;lt;VLA-OBJECT IAeccSurfaceContourLabelGroups 000000005e92b050&amp;gt;
;   Contours (RO) = #&amp;lt;VLA-OBJECT IAeccSurfaceContours 000000005e7fea08&amp;gt;
;   DefinitionProperties (RO) = #&amp;lt;VLA-OBJECT IAeccTinSurfaceDefinitionProperties 000000005e946bd0&amp;gt;
;   DEMFiles (RO) = #&amp;lt;VLA-OBJECT IAeccSurfaceDEMFiles 000000005e7fd008&amp;gt;
;   Description = ""
;   DisplayName (RO) = "ALAAC - (1)"
;   Document (RO) = #&amp;lt;VLA-OBJECT IAeccDocument 000000005e94b550&amp;gt;
;   EntityTransparency = "ByLayer"
;   Handle (RO) = "6B4F"
;   HasExtensionDictionary (RO) = -1
;   Hyperlinks (RO) = #&amp;lt;VLA-OBJECT IAcadHyperlinks 000000005e8d3838&amp;gt;
;   Labels (RO) = #&amp;lt;VLA-OBJECT IAeccSurfaceLabels 000000005e923210&amp;gt;
;   Layer = "C-TOPO"
;   Linetype = "ByLayer"
;   LinetypeScale = 1.0
;   Lineweight = -1
;   Material = "ByLayer"
;   Name = "ALAAC - (1)"
;   ObjectID (RO) = 42
;   ObjectName (RO) = "AeccDbSurfaceTin"
;   OutputTriangles (RO) = (1804.11 3669.79 1.99395 1808.67 3650.32 1.99395 ... )
;   OwnerID (RO) = 43
;   PlotStyleName = "ByLayer"
;   PointFiles (RO) = #&amp;lt;VLA-OBJECT IAeccSurfacePointFiles 000000005e7fbf08&amp;gt;
;   PointGroups (RO) = #&amp;lt;VLA-OBJECT IAeccSurfacePointGroups 000000005e7fb288&amp;gt;
;   Points (RO) = (1816.44 3652.14 2.22045e-16 1808.67 3650.32 1.99395 ... )
;   ShowToolTip = -1
;   Statistics (RO) = #&amp;lt;VLA-OBJECT IAeccTinSurfaceStatistics 000000005e946690&amp;gt;
;   Style = #&amp;lt;VLA-OBJECT IAeccSurfaceStyle 000000005e8787f0&amp;gt;
;   StyleName (RO) = "Contours 2m and 10m (Design)"
;   SurfaceAnalysis (RO) = #&amp;lt;VLA-OBJECT IAeccSurfaceAnalysis 000000005e947710&amp;gt;
;   TrueColor = #&amp;lt;VLA-OBJECT IAcadAcCmColor 000000005e8d3650&amp;gt;
;   Type (RO) = 2
;   Visible = -1
; Methods supported:
;   AddPointMultiple (1)
;   ArrayPolar (3)
;   ArrayRectangular (6)
;   Copy ()
;   CreateSnapshot ()
;   Delete ()
;   ExtractBorder (1)
;   ExtractContour (4)
;   FindElevationAtXY (2)
;   GetBoundingBox (2)
;   GetExtensionDictionary ()
;   GetXData (3)
;   Highlight (1)
;   IntersectPointWithSurface (2)
;   IntersectWith (2)
;   IsReferenceObject ()
;   IsReferenceStale ()
;   IsReferenceSubObject ()
;   IsReferenceValid ()
;   Mirror (2)
;   Mirror3D (3)
;   Move (2)
;   PasteSurface (1)
;   Rebuild ()
;   RebuildSnapshot ()
;   RemoveSnapshot ()
;   Rotate (2)
;   Rotate3D (3)
;   SampleElevations (4)
;   ScaleEntity (2)
;   SetXData (2)
;   TransformBy (1)
;   Update ()

T 
_$ &lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="qqq.JPG" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/911025iD45662DC44E0A16F/image-size/large?v=v2&amp;amp;px=999" role="button" title="qqq.JPG" alt="qqq.JPG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 24 Apr 2021 04:00:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10264477#M6808</guid>
      <dc:creator>hosneyalaa</dc:creator>
      <dc:date>2021-04-24T04:00:18Z</dc:date>
    </item>
    <item>
      <title>Ynt: BoundedVolumes Method</title>
      <link>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10264485#M6809</link>
      <description>&lt;P&gt;As an idea&lt;BR /&gt;You can add an&amp;nbsp;&lt;SPAN&gt;surface boundary&lt;/SPAN&gt; to it&lt;/P&gt;&lt;P&gt;And you inquire about volume&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;http://docs.autodesk.com/CIV3D/2012/ENU/API_Reference_Guide/com/AeccXLandLib__IAeccSurfaceBoundaries.htm&lt;/LI-CODE&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="wwww.JPG" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/911026i66C8C12432693E28/image-size/large?v=v2&amp;amp;px=999" role="button" title="wwww.JPG" alt="wwww.JPG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 24 Apr 2021 04:05:26 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10264485#M6809</guid>
      <dc:creator>hosneyalaa</dc:creator>
      <dc:date>2021-04-24T04:05:26Z</dc:date>
    </item>
    <item>
      <title>Ynt: BoundedVolumes Method</title>
      <link>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10264598#M6810</link>
      <description>&lt;P&gt;Hello i make it work. These days i will upload the code.&lt;/P&gt;&lt;P&gt;Its nothing special but if someone else need it. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for replay &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 24 Apr 2021 06:44:20 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10264598#M6810</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2021-04-24T06:44:20Z</dc:date>
    </item>
    <item>
      <title>Re: BoundedVolumes Method</title>
      <link>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10272220#M6811</link>
      <description>&lt;P&gt;Hello, here is what i do.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;(defun T:endP (pline /  endpoint end start all all2); retund list ((x1 y1 0) (x2 y2 0) ... (Xn Yn 0))
;pline - Visual name on Polyline
(setq close (vlax-get pline 'Closed))
(if (equal (vlax-get pline 'ObjectName) "AcDbPolyline")
		(progn
			(setq endpoint  (vlax-get pline 'coordinates))
				(setq start (list (car endpoint) (cadr endpoint)))
				(setq end (list (cadr (reverse endpoint)) (car (reverse endpoint))))
					(if (equal start end)
						(progn
							(setq all (append (LM:group-n endpoint 2) (list start)))
							(setq all2 (mapcar '(lambda (x) (append x (list 0))) all))
						)
					(if (equal close '-1)
						(progn
							(setq all (append (LM:group-n endpoint 2) (list start)))
							(setq all2 (mapcar '(lambda (x) (append x (list 0))) all))
						)						
					)
					)
					
		)
)
all2
)

(defun c:BoundedVolume (/ selL VnamL VnamS coord inv) 

(setq selL (car (entsel "\nSelect Poly..")))
(setq VnamL (vlax-ename-&amp;gt;vla-object selL))

(setq coord (gc:3dPointListToVariant (T:endP VnamL)))
(setq selS (car (entsel "\nSelect volumeSurf..")))
(setq VnamS (vlax-ename-&amp;gt;vla-object selS))

(setq inv (vl-catch-all-apply 'vlax-invoke-method (list (vlax-get VnamS 'Statistics) 'BoundedVolumes coord 'pCut 'pFill 'pNet)))
(princ "\n")
(princ (rtos pCut 2 3))
(princ "\n")
(princ (rtos pFill 2 3))

(princ)
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Command: BoundedVolume&lt;/P&gt;&lt;P&gt;Used links:&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.theswamp.org/index.php?topic=31674.0" target="_blank" rel="noopener nofollow noreferrer"&gt;This&lt;/A&gt;&amp;nbsp;and&amp;nbsp;&lt;A href="http://www.lee-mac.com/groupbynum.html" target="_blank" rel="noopener nofollow noreferrer"&gt;This&lt;/A&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 27 Apr 2021 15:05:56 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/civil-3d-customization-forum/boundedvolumes-method/m-p/10272220#M6811</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2021-04-27T15:05:56Z</dc:date>
    </item>
  </channel>
</rss>

