2021-10-05 01:14 AM
Hi Experts,
I would like to add some clickable edges to a Poly2_b{5}. At the moment I can only click in the middle of the Poly2_b{5} fill to select it. I need to be able to select the outer perimeter for aligning the edges to other objects.
I can match the Hotline2 commands to the linear edges of the Poly2_b{5}. However how can I HotArc2 the Poly2_b{5}curves? Or is there any other way to make the edges clickable?
Poly2_b{5} uses the Arc using centerpoint and angle with the 900 and 4000:
x0, y0, 900, !Set centerpoint
0, a, 4000+s, !Arc using centerpoint and angle
Whilst Hotarc2 uses:
hotarc2 xCenterPoint, yCenterPoint, radius, angleStart, angleEnd, unID
Is there a way to write duplicate and change the original Poly2_b{5} code so that Hotarc2 can follow the curves of the Poly2_b{5}?
Thank you so much for your help, I have been battling this for several days!
Solved! Go to Solution.
2021-10-05 01:23 AM
No, The hotarc's and hotlines have to be scripted separately, you can use the polyline values (if using put or matrix parameters obviously, but it has to be phrased and the angles calculated on center and starting point/ angle in poly definition.
Piotr
2021-10-05 01:30 AM - edited 2021-10-05 01:30 AM
Time to pull out the highschool trigonometry!
arctan( dx / dy )
2021-10-05 01:23 AM
No, The hotarc's and hotlines have to be scripted separately, you can use the polyline values (if using put or matrix parameters obviously, but it has to be phrased and the angles calculated on center and starting point/ angle in poly definition.
Piotr
2021-10-06 01:50 AM
Hi Piotr, thanks so much, I had wondered but thought I would check. Thank you again!
2021-10-05 01:30 AM - edited 2021-10-05 01:30 AM
Time to pull out the highschool trigonometry!
arctan( dx / dy )
2021-10-06 01:52 AM
Hi Lingwisyer, thank you to for responding, I will have to look up arctan( dx / dy ) and dust off some maths books. All the best!
2021-10-06 06:45 PM - edited 2021-10-06 06:50 PM
tanΘ = opposite / adjacent
In this case. Change in X (dX) / Change in Y (dY) between your starting node and the centre node.
arctan is the same as tan⁻¹
Θ = arctan( dx / dy )
You may then need to add 90 depending on whether zero is vertical or horizontal. You may also need to subtract Θ from 360 if X₁ < X₂
Ling.
2021-10-05 01:47 AM
sin / cos rather... tan-likes can blow up 😜
2021-10-05 06:15 PM
One of my objects contains trig equations which exceed the line limit so have to be split into various parts...
2021-10-06 12:34 AM
use the Force Luke: and use "\" 😜
2021-10-06 07:16 PM
I mean the *character limit for a string, which a new line does not fix. I did not know about this identifier.
In reality I should probably break it down more as it is the merge of several equations so by breaking it down it would be easier to understand. On several occasions I have myself needed to work parts of the equations backwards to figure out what they actually did...
Ling.
2021-10-07 01:03 AM
Sometimes this can be overriden by summing up parameters...but I do not know how many characters You have there...
2021-10-07 05:57 AM
If it is your object which defines the geometry, you probably have the centerpoints of the circles to calculate with.
If you have to draw generic polygons from profiles, it might be easier to use "ProfileConverter" macro. This article explains the reverse conversion, hope you will be able to figure it out reading the code. We are in the process of writing some articles on GDLCenter about it.