Author Topic: 3d Lake liner area  (Read 3298 times)

0 Members and 1 Guest are viewing this topic.

ronjonp

  • Needs a day job
  • Posts: 7529
3d Lake liner area
« on: January 17, 2005, 05:42:04 PM »
Is there a fast way to get liner surface area of this 3d lake model?

http://theswamp.org/lilly_pond/ronjonp/lake.dwg?nossi=1

Thanks,

Ron

Windows 11 x64 - AutoCAD /C3D 2023

Custom Build PC

hyposmurf

  • Guest
3d Lake liner area
« Reply #1 on: January 17, 2005, 05:56:25 PM »
Am I right in thinking you can use MASSPROP?This is what it returned
 ----------------   REGIONS   ----------------

Area:                    66237.7959
Perimeter:               1386.1329
Bounding box:         X: -188.9593  --  87.8503
                      Y: -242.7378  --  219.8976
                      Z: 11.0000  --  11.0000
Centroid:             X: -33.6782
                      Y: -29.8762
                      Z: 11.0000

ronjonp

  • Needs a day job
  • Posts: 7529
3d Lake liner area
« Reply #2 on: January 17, 2005, 06:01:31 PM »
I tried using massprop, but the objects I need areas for are bodies. The area you gave me is the surface area of each contour.  :?

Thanks for the try :)

Ron

Windows 11 x64 - AutoCAD /C3D 2023

Custom Build PC

hyposmurf

  • Guest
3d Lake liner area
« Reply #3 on: January 17, 2005, 06:08:40 PM »
Had a feeling it wasnt that easy!Would you be able to do this in inventor?Maybe with inventor can figure it out for you.

Scott

  • Bull Frog
  • Posts: 244
3d Lake liner area
« Reply #4 on: January 17, 2005, 06:48:40 PM »
Where did the drawing go.  I can't view it

ronjonp

  • Needs a day job
  • Posts: 7529
3d Lake liner area
« Reply #5 on: January 17, 2005, 07:20:03 PM »
It's still there?

Windows 11 x64 - AutoCAD /C3D 2023

Custom Build PC

Ron Heigh

  • Guest
3d Lake liner area
« Reply #6 on: January 18, 2005, 07:36:15 AM »
When I open the dwg, there isn't anything showing.
Are you using special addons?

ronjonp

  • Needs a day job
  • Posts: 7529
3d Lake liner area
« Reply #7 on: January 18, 2005, 09:22:29 AM »
Ron H.,

Just using vanilla 2005 :?:

Ron

Windows 11 x64 - AutoCAD /C3D 2023

Custom Build PC

CAB

  • Global Moderator
  • Seagull
  • Posts: 10401
Re: 3d Lake liner area
« Reply #8 on: January 18, 2005, 09:48:10 AM »
Quote from: ronjonp
Is there a fast way to get liner surface area of this 3d lake model?


I'm confused by you question, that happens a lot to me :)

What do you mean by 'Liner'?
Are you talking about the surface area of the water exposed to the air?
Or both that and the area exposed to the earth?

I was able to use the area command and get the former.
I've reached the age where the happy hour is a nap. (°¿°)
Windows 10 core i7 4790k 4Ghz 32GB GTX 970
Please support this web site.

Scott

  • Bull Frog
  • Posts: 244
3d Lake liner area
« Reply #9 on: January 18, 2005, 10:17:52 AM »
Can you save the file back to version 2000.  I know, I should upgrade but I'm a one man show around here and I'm poor.

scott

ronjonp

  • Needs a day job
  • Posts: 7529
3d Lake liner area
« Reply #10 on: January 18, 2005, 10:43:11 AM »
Scott,

Give it a try now.


CAB,

I need the area of the ground that the liner has to cover not the surface area of the water. I hacked together a routine that allows the user to enter the slope, then pick the top contour and bottom contour. I know if I used cond (Jeff M) I could eliminate my repetiveness :D , but I'm having trouble understanding that function. Here is my mess :oops:


Code: [Select]
(defun c:liner (/ )
(vl-Load-Com)
 (initget 1 "1 2 3 4 5 6 O")
  (setq   P (getkword
       "\n Enter slope or liner (O)verlap 1:(1) 1:(2) 1:(3) 1:(4) 1:(5) 1:(6):  "
     )
  )
(if (= P "1")
  (progn
    (defun top (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq top1 (top (car (entsel "\nSelect top closed 1:1 contour: "))))

    (defun bottom (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq bottom1
  (bottom (car (entsel "\nSelect bottom closed 1:1 contour: ")))
    )


    (setq txt (strcat (rtos (* (- top1 bottom1) 1.411764706) 2 2)))
    (setq inpt (getpoint "\npick text insertion point"))
    (command ".text" inpt (* (getvar "dimscale") 0.15) "0" txt)
  )
)



(if (= P "2")
  (progn
    (defun top (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq top1 (top (car (entsel "\nSelect top closed 1:2 contour: "))))

    (defun bottom (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq bottom1
  (bottom (car (entsel "\nSelect bottom closed 1:2 contour: ")))
    )


    (setq txt (strcat (rtos (* (- top1 bottom1) 1.117788462) 2 2)))
    (setq inpt (getpoint "\npick text insertion point"))
    (command ".text" inpt (* (getvar "dimscale") 0.15) "0" txt)
  )
)


(if (= P "3")
  (progn
    (defun top (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq top1 (top (car (entsel "\nSelect top closed 1:3 contour: "))))

    (defun bottom (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq bottom1
  (bottom (car (entsel "\nSelect bottom closed 1:3 contour: ")))
    )


    (setq txt (strcat (rtos (* (- top1 bottom1) 1.053459119) 2 2)))
    (setq inpt (getpoint "\npick text insertion point"))
    (command ".text" inpt (* (getvar "dimscale") 0.15) "0" txt)
  )
)


(if (= P "4")
  (progn
    (defun top (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq top1 (top (car (entsel "\nSelect top closed 1:4 contour: "))))

    (defun bottom (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq bottom1
  (bottom (car (entsel "\nSelect bottom closed 1:4 contour: ")))
    )


    (setq txt (strcat (rtos (* (- top1 bottom1) 1.03125) 2 2)))
    (setq inpt (getpoint "\npick text insertion point"))
    (command ".text" inpt (* (getvar "dimscale") 0.15) "0" txt)
  )
)


(if (= P "5")
  (progn
    (defun top (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq top1 (top (car (entsel "\nSelect top closed 1:5 contour: "))))

    (defun bottom (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq bottom1
  (bottom (car (entsel "\nSelect bottom closed 1:5 contour: ")))
    )


    (setq txt (strcat (rtos (* (- top1 bottom1) 1.02) 2 2)))
    (setq inpt (getpoint "\npick text insertion point"))
    (command ".text" inpt (* (getvar "dimscale") 0.15) "0" txt)
  )
)


(if (= P "6")
  (progn
    (defun top (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq top1 (top (car (entsel "\nSelect top closed 1:6 contour: "))))

    (defun bottom (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq bottom1
  (bottom (car (entsel "\nSelect bottom closed 1:6 contour: ")))
    )


    (setq txt (strcat (rtos (* (- top1 bottom1) 1.014136905) 2 2)))
    (setq inpt (getpoint "\npick text insertion point"))
    (command ".text" inpt (* (getvar "dimscale") 0.15) "0" txt)
  )
)


(if (= P "O")
  (progn
    (defun top (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq top1 (top (car (entsel "\nSelect overlap top closed contour: "))))

    (defun bottom (obj)
      (if (= (type obj) 'ENAME)
(setq obj (vlax-ename->vla-object obj))
      )
      (if (vlax-property-available-p obj 'area)
(vla-get-area obj)
      )
    )
    (setq bottom1
  (bottom (car (entsel "\nSelect lake top closed contour: ")))
    )


    (setq txt (strcat (rtos (* (- top1 bottom1) 1) 2 2)))
    (setq inpt (getpoint "\npick text insertion point"))
    (command ".text" inpt (* (getvar "dimscale") 0.15) "0" txt)
  )
)
)
(princ "\n <Type 'LINER' to run>")
(princ)


Windows 11 x64 - AutoCAD /C3D 2023

Custom Build PC

Scott

  • Bull Frog
  • Posts: 244
3d Lake liner area
« Reply #11 on: January 18, 2005, 10:55:36 AM »
I guess your file doesn't like me.  It opens, but nothing in the drawing.

Scott

CAB

  • Global Moderator
  • Seagull
  • Posts: 10401
3d Lake liner area
« Reply #12 on: January 18, 2005, 11:00:42 AM »
OK I got you now.
Man Made Lake with an EDPM liner, Dugh!
I've reached the age where the happy hour is a nap. (°¿°)
Windows 10 core i7 4790k 4Ghz 32GB GTX 970
Please support this web site.