CAD Forum - tips, tricks, discussion and utilities for AutoCAD, Inventor, Revit and other Autodesk products [www.cadforum.cz]
Cesky English Deutsch
Login/Register:
 Visitors: 2736 

CAD tip CAD tip # 12105:

Question CAD 
 %  platform  category 
Q - question

Select the smallest DWG object - MinOf utility.

A - answer With the freeware utility MinOf you can select the smallest or largest object from the selection set, by a specified property (e.g. Area, Length, Volume, Elevation, Scale…).

Download the MinOf utility from www.cadstudio.cz/download, load it into your AutoCAD with APPLOAD and start it by typing the MINOF command.

The first prompt asks for the drawing object type, this will also influence the next property set:

Specify type of compared objects [Any/Line/Polyline/anYline/clOsedpoly/Circle/Text/Insert/Hatch/Solid].

"Any" will accept any type of object, "anyLine" allows Lines, Polylines and Splines, "clOsedpoly" allow only closed LWpolylines, "Solid" means 3D Solids.

Then you will select the source objects for the comparison.

The next prompt lists all common numeric properties for the selected object types (analyzes the first of them). You can also type any other property if you are familiar with the DWG objects. The "Centroid" property means "Z-coordinate of the centroid", the "strlEngth" pseudo-property is a computed string length (number of characters), the customizable "cUstomprop" is described below.

The last prompt asks for choosing the Minimum (smallest) or Maximum (largest) object - compared by the selected property. The resulting object will be selected - e.g. the shortest line.

You can use MinOf either separately (grip-selects the specified object), or inside any other command invoking it on the "Select objects:" prompt by typing the transparent command 'MINOF or the LISP command (C:MINOF). See:

The special property "cUstomProp" can be used to process and compare any other object property. You will first need to define a custom function which will handle this parameter. This LISP function must be called "MinOfCustomProperty", has a single parameter, object ID and should return a number - the value of the custom-defined property. See examples:

;sample 1: string length
(defun MinOfCustomProperty (obj / prop)
	(if (vlax-property-available-p obj 'TextString)
	 (setq prop (vl-catch-all-apply 'vlax-get-property (list obj 'TextString)))
	 (setq prop nil)
	)
	(if prop (setq prop (strlen prop)))
)

;sample 2: distance of block from a given point
(defun MinOfCustomProperty (obj / prop)
 (if (not _minoflocal)(setq _minoflocal (getpoint "\nPick reference point: ")))
	(if (vlax-property-available-p obj 'InsertionPoint)
	 (setq prop (vl-catch-all-apply 'vlax-get-property (list obj 'InsertionPoint)))
	 (setq prop nil)
	)
	(if prop (setq prop (distance _minoflocal (vlax-safearray->list (vlax-variant-value prop)))))
)
ACAD
100% *  CAD 
8.1.2019    826×  
Prices - CAD eShop:
applies to: AutoCAD ·

See also:
Tip 12279:PropByLayer - an inverse function to SetByLayer.
Tip 12248:How to remove fillet or chamfer from a 3D solid?
Tip 12237:UnfoldRS - unfold 3D surfaces to 2D in AutoCAD.
Tip 12129:Atypical use of meshing for tiling a closed shape.
Tip 12084:Three methods of adding line lengths in AutoCAD.


Back   All CAD Tips All CAD tips&tricks



Have we helped you? If you want to support the CAD Forum web service, consider buying one of our CAD applications, or our custom software development offerings, or donating via PayPal (see above). You may also add a link to your web - like this "fan" link: CAD Forum - tips, utilities, blocks for Autodesk products
CAD:    OS:    Categ: 
Text:  FAQ glossary   



Featuring:
Link your AutoCAD texts with Excel tables/sheets. Export. Change. Import.
Try DwgText 2020 More info


Please use these tips at your own risk.
CAD Studio is not responsible for possible problems that may occur as a result of using any of these tips.
TOPlist