Length and width properties

Length and width properties

pjgadsdon
Observer Observer
363 Views
8 Replies
Message 1 of 9

Length and width properties

pjgadsdon
Observer
Observer

Can anyone tell me why I have length, width and position properties on the object below:

pjgadsdon_0-1778070584406.png

 

But not on the object selected on this image:

pjgadsdon_1-1778070662337.png

Thanks, I seem to keep losing the properties on some objects but not on others on the same drawing

 

Cheers

0 Likes
Accepted solutions (2)
364 Views
8 Replies
Replies (8)
Message 2 of 9

imadHabash
Mentor
Mentor

Hi,

Can you share with us here a CAD dwg file with those two 3d solid objects?

Imad Habash

EESignature

0 Likes
Message 3 of 9

Kent1Cooper
Consultant
Consultant

I think it's about how the Solid was made, as well as depending on certain other characteristics.  If I make such a thing with the BOX command, length/width/height properties are all shown, but if I make it with EXTRUDE or PRESSPULL from a Polyline outline, they are not -- only Height.  Maybe that's because a true Box necessarily has constant values for all three, but Solids made by other means can have variable dimensions in any direction.  If I SLICE off part of my Box, even if I Slice it orthogonally so it's still a pure rectangular prism, it's no longer a "box," and no longer shows any of those.

Compare their "SolidType" VLA properties:

(vla-get-SolidType (vlax-ename->vla-object (car (entsel))))

and select one.

If they're orthogonally oriented, you can get those dimensions from the size of their bounding boxes:

(defun C:BB (/ minpt maxpt); Bounding Box of selected object
  (vla-getboundingbox (vlax-ename->vla-object (car (entsel))) 'minpt 'maxpt)
  (setq
    box (list (vlax-safearray->list minpt) (vlax-safearray->list maxpt))
    delta (mapcar '- (cadr box) (car box))
  ); setq
  (prompt
    (strcat
      "\nBounding Box [in 'box' variable]: " (vl-princ-to-string box) ";"
      "\nExtents: X direction " (rtos (car delta))
      "; Y direction " (rtos (cadr delta))
      "; Z direction " (rtos (caddr delta)) "."
    ); strcat
  ); prompt
  (princ)
)

That leaves the 'delta' variable listing the XYZ of the extents, so you can extract the values as needed.

Kent Cooper, AIA
0 Likes
Message 4 of 9

pjgadsdon
Observer
Observer

Thanks for the detailed post and yes what you say makes sense. I most probably used presspull and or extrude on the objects that do not have length, width and height properties. I used the properties to move and resize my objects to exact dimensions, so not sure about whether I used Extrude or Presspull but might have done.

 

I still have the grips so I can alter sizes this way but it awkward and messy to get exact sizes.

 

Are you suggesting that creating a sheet using "Box" is not the right way? What I have done is create a box 2440mm x 1220mm x 18mm using the box cmd and then sliced it up. All my objects are the right size.

 

Should have I created all these objects and slices in 2D and then extruded them

 

Thank you very much

0 Likes
Message 5 of 9

pjgadsdon
Observer
Observer

I am still stuck on this, I just cant work out why some objects have dimensions and some don't. I have even created a new file and randomly, after slicing and sizing, some objects seem to lose the dimensions properties as wells there XYZ 

 

Should I do this in 2D first?

 

Thanks for everyone's help

0 Likes
Message 6 of 9

Kent1Cooper
Consultant
Consultant
Accepted solution

@pjgadsdon wrote:

.... Should have I created all these objects and slices in 2D and then extruded them ....


I don't think so.  Then they would all be of the "Extrusion" Solid Type, and Properties would list their Height, but not their other dimensions.

It seems that for things made with the Primitive 3D Solids commands [BOX, SPHERE, CONE, CYLINDER, etc.], it knows what they are, and it shows the Type at the top of the Properties palette Geometry listing.  And it shows the various dimensional properties appropriate to the creation method [varying by Type], and where there's an origin location of some kind specified in their creation, the coordinates of that.  With things made with EXTRUDE or PRESSPULL, both are of the Extrusion Type and show only the Height that was part of their creation.

But once you mess with one such as by Slicing it or Subtracting a hole through it, it becomes "generic," and not of any named Type, so Properties doesn't show one, nor any Geometry category.

Kent Cooper, AIA
0 Likes
Message 7 of 9

pjgadsdon
Observer
Observer

Thanks

 

In that case I don't know how to produce 3d objects that I can precisely control the dimensions. I can do them initially but as soon as I mess with them, I can no longer do it. I wish I had rulers and guides like AI. I could then set the guides to precisely the size I need and then use the Grips to resize.

 

The only way I can see to do this, is too use construction lines (which act similar to AI) and zoom in and use the grips.

 

thanks

0 Likes
Message 8 of 9

Kent1Cooper
Consultant
Consultant
Accepted solution

@pjgadsdon wrote:

.... The only way I can see to do this, is too use construction lines ... and use the grips. ....


Generally I agree, though in certain very limited circumstances, you may sometimes be able to do some things more easily.  For example, say you have a plain box that has been Sliced orthogonally from a larger one so it's no longer of the "box" Solid Type, but is still a clean rectangular prism.  If you want to make it bigger in one direction, you can COPY it, easily being precise about the amount of size increase [the Copy distance], and then UNION the original with the copy.  Or smaller, the same but INTERSECT.

Kent Cooper, AIA
0 Likes
Message 9 of 9

pjgadsdon
Observer
Observer

thanks

 

I will experiment with that

 

Cool

0 Likes