Lisp for Unique Outline Name For Geometrifying Trigonometry Expression Shapes

Lisp for Unique Outline Name For Geometrifying Trigonometry Expression Shapes

SanjoyNath
Advocate Advocate
1,529 Views
5 Replies
Message 1 of 6

Lisp for Unique Outline Name For Geometrifying Trigonometry Expression Shapes

SanjoyNath
Advocate
Advocate

Dear Experts,

 

We Should start this with thanking @CodeDing and @dbhunia

They have done good efforts on Geometrifying Trigonometry(C) implementation on Autocad through Lisp which is a very big leap to the proof applications and for automated geometry generation from given Trigonometric expressions.

This is a kind of Permutation Group on Representations and Autocad Latest version is proved its capability that it continued for long 8 hours to prepare  1099511627776 numbers of pictures through Lisps

(Thank you @CodeDing and @dbhunia to generate these pictures which other mathematical softwares could not generate)

refer

Geometrifying Trigonometry(C)      and the pictures here

And

Theory Behind Geometrifying Trigonometry(C)

 

Now Question is

UNIQUE NOMENCLATURE OF OUTLINES(ZigZag outlines formed due to union of multiple triangular tiles)

 

SanjoyNath(C)GeometrifyingTrigonometry(C)GeometrificationOfTrigonometry(C)GeometricProofOfTrigonometry(C)IntuitivePicturesOfGeometrifyingTrigonometryWorldHasNeverSeenThesePower7.png

 

Cautuion

NARRAY Shapes are not convex hulls nor rubber bands.These are Union of Blocks(ZIGZAG but outline polyline shape)

We have done Nomenclatures for AABB rectangles which is not good kind of measure for this problem of Geometrifying Trigonometry(C)

 

 

If we make all these shapes as union of blocks (separate blocks union for Geometrifying Trigonometry(C) shapes Blocks NARRAYS elements) then how can we find which of these outlines(ZigZag union Boundary) are unique?

 

And

 

Which of these are common?

 

 

 

This type of related problems are discussed in Lisp forum before but this problem is more detailed specific

 

 

 

https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/geometrifying-trigonometry-narrays/t...

must read

https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/all-possible-number-outcomes-with-du...

must read

https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/is-there-any-lisp-routine-to-align-a...

 

 

 

https://forums.autodesk.com/t5/net/assign-nomenclature-to-each-polyline/m-p/4874426
https://forums.autodesk.com/t5/net/calculate-length-of-line-and-assign-nomenclature-to-line/m-p/4773...
https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/changing-polyline-shape/m-p/6843174?...
https://forums.autodesk.com/t5/net/assign-nomenclature-to-each-polyline/m-p/4874426

Sanjoy Nath
BIM Manager And Digital Lead (Structures Online)
BOOST, AR , VR ,EPM,IFC API,PDF API , CAD API ,Revit API , Advance Steel API
Founder of Geometrifying Trigonometry(C)
0 Likes
1,530 Views
5 Replies
Replies (5)
Message 2 of 6

CodeDing
Advisor
Advisor

@SanjoyNath,

 

If I understand correctly, you are trying to find objects that have the same, or different, outlines in your drawing.

ASSUMING, you already have a way to create outlines of your objects...

The most Effective, but slow, way I can think to do this. would be to check by using -OVERKILL

 

I created 2 object outlines then used this very crude code to try (this would definitely need refined):

(defun c:OLAP ( / e1 e2)
(setq e1 (car (entsel)))
(setq e2 (car (entsel)))
(command "_.MOVE" e2 "" (cdr (assoc 10 (entget e2))) (cdr (assoc 10 (entget e1))))
(command "-OVERKILL" e1 e2 "" "d")
(if (not (and (entget e1) (entget e2)))
	(prompt "\n...Duplicate found...")
	(prompt "\n...Duplicate NOT found...")
);if
(princ)
);defun

image.png

...obviously there would need to be many checks before moving one vertex to another for comparison.

A check of all vertices in relation to a vertex within one entity AND a second entity (and vice-versa) would probably need to be completed. While also determining which vertex should be moved and where that corresponding vertex would be in a second entity.

But, it's a start...

Best,

~DD

0 Likes
Message 3 of 6

SanjoyNath
Advocate
Advocate

Dear @CodeDing,

 

Yes this way of working is good resolution which works when there is set of lines as you have given in Geometrifying Trigonometry(C) systems

You have understood it rightly when everything is made up of discrete lines.When i was running this , i have seen that the small non overlapped internal lines remain intact but we need outlines polygons which are closed while dont having any other entity inside that

Then we need to do unique nomenclature for these polygons

I was thinking it in some more useful way and that is beyond Geometrifying Trigonometry also.

 

 

Surely , the first requirement is generated from Geometrifying Trigonometry(C) which has proved in the Match Circle that AUTOCAD is MORE POWERFUL TOOL than several Mathematics Research Softwares because it has good Well managed Features to handle very large number of objects with LARGE numbers of intelligent features and there are good experts of LISP and other c# API , VBA etc...

 

 

 

 

But as this project is going on , ARCHITECTS found big potential in this issue of unique outline detection system

 

 

Problem Statement Clarified

1. Suppose we have a town plan with multi floor plans are separately drawn 

2. All Brick Walls are rectangular blocks(BLOCK Objects) having clashes

3. Doors are kept empty in plan

 

 

3+. These Floor plans (separately for floor wise) are blocks having blocks of brick walls

3++. We need a command which will convert all these outer floor plan blocks to non blocks then convert the brick wall blocks into regions and do the unions of these regions and convert these union regions to closed poly lines

 

Whao Factor

6. WE need numbering (Uniqueness detection) of these ZIG ZAG Polygons Cat Happy Smiley Very Happy

 

Master Punch

7. It will generate a list of unique nomenclature of floor plans such that our architects can detect if some mistake is there in any floor plan( Segregating Almost duplicate floor plan but difference in few millimeters of Door spaces etc...)

 

 

First see the Geometrifying Trigonometry Case . After all these steps are done , we need to list all common and different polygons found in whole drawings.

CAUTION

If there is Rotation or scaling or translation , it is considered same polygon.Only feature changes to checkGeometrifyingTrigonometry(C)SanjoyNath(C)SanjoyNath(C)GeometrifyingTrigonometry(C)GeometrificationOfTrigonometry(C)GeometricProofOfTrigonometry(C)POLYGONNUMBERING(C)SETUPS FOR CODEDING.pngGeometrifyingTrigonometry(C)SanjoyNath(C)SanjoyNath(C)GeometrifyingTrigonometry(C)GeometrificationOfTrigonometry(C)GeometricProofOfTrigonometry(C)POLYGONNUMBERING(C)SETUPS FOR CODEDING.png

 

 

 

Now let me explain the case of ARCHITECTS. Same Logic will work for Floor plan

 

Sanjoy Nath
BIM Manager And Digital Lead (Structures Online)
BOOST, AR , VR ,EPM,IFC API,PDF API , CAD API ,Revit API , Advance Steel API
Founder of Geometrifying Trigonometry(C)
0 Likes
Message 4 of 6

dbhunia
Advisor
Advisor

We have got the outlines (polygons) of NARRAYS ....but the problem is how to find the unique shapes of polygons...

 

please in see the attached drawing......we want to find the unique polygons (from white colored polygon)

 

And also advice how to optimize the code execution time.

 

The command is "GTN"....

 

 

 


Debashis Bhunia
Co-Founder of Geometrifying Trigonometry(C)
________________________________________________
Walking is the First step of Running, Technique comes Next....
0 Likes
Message 5 of 6

SanjoyNath
Advocate
Advocate

Dear @dbhunia

 

Good work done. The Arrangement is also proper side to side mapping as in picture here

 

 

Please increase the speed.Unique naming of polygons will help us all Smiley Very Happy

 

 

SanjoyNath(C)GeometrifyingTrigonometry(C)Convertions of outlines numberingSanjoyNath(C)GeometrifyingTrigonometry(C)Convertions of outlines numbering

Sanjoy Nath
BIM Manager And Digital Lead (Structures Online)
BOOST, AR , VR ,EPM,IFC API,PDF API , CAD API ,Revit API , Advance Steel API
Founder of Geometrifying Trigonometry(C)
0 Likes
Message 6 of 6

dbhunia
Advisor
Advisor

Dear Experts

 

I have found the unique polygons.

 

Capture.PNG

 

Now advice me how to optimize the code execution time.

 

 


Debashis Bhunia
Co-Founder of Geometrifying Trigonometry(C)
________________________________________________
Walking is the First step of Running, Technique comes Next....
0 Likes