Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I am having trouble determining what the end position of an arc is. I would like to determine the coordinates of the end point or start point and then place a textbox or other shape at those same coordinates. Of the attributes of an arc - which describes the top and left of the end point? The top and left that I can obtain seem to provide the position of the top left corner of the bounding box/border of the shape - which may be far from the end point of the actual arc.
Thanks for any assistance with this question. |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
"David Cuthill" wrote in message
I am having trouble determining what the end position of an arc is. I would like to determine the coordinates of the end point or start point and then place a textbox or other shape at those same coordinates. Of the attributes of an arc - which describes the top and left of the end point? The top and left that I can obtain seem to provide the position of the top left corner of the bounding box/border of the shape - which may be far from the end point of the actual arc. Thanks for any assistance with this question. ====================== The Arc is described by its Nodes collection, air code - Dim nds As ShapeNodes Dim ndStart as ShapeNode, ndEnd as ShapeNode Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.count) x1 = ndStart.Points(1,1) : y1 = ndStart.Points(1,2) x2 = ndStart.Points(1,1) : y2 = ndEnd.Points(1,2) Peter T |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Thursday, 24 September 2020 at 04:58:19 UTC-6, Peter T wrote:
"David Cuthill" wrote in message I am having trouble determining what the end position of an arc is. I would like to determine the coordinates of the end point or start point and then place a textbox or other shape at those same coordinates. Of the attributes of an arc - which describes the top and left of the end point? The top and left that I can obtain seem to provide the position of the top left corner of the bounding box/border of the shape - which may be far from the end point of the actual arc. Thanks for any assistance with this question. ====================== The Arc is described by its Nodes collection, air code - Dim nds As ShapeNodes Dim ndStart as ShapeNode, ndEnd as ShapeNode Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.count) x1 = ndStart.Points(1,1) : y1 = ndStart.Points(1,2) x2 = ndStart.Points(1,1) : y2 = ndEnd.Points(1,2) Peter T Thanks Peter I understand in theory what you are showing but I am having trouble getting it to work in practice I have but together this but get an error at x1=ndstart.points(1,1) .... <Error 424 Object required Dim nds As ShapeNodes Dim ndStart As ShapeNode, ndEnd As ShapeNode Set myArcShape = Worksheets("test").Shapes(1) Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.Count) x1 = ndStart.Points(1, 1): y1 = ndStart.Points(1, 2) x2 = ndStart.Points(1, 1): y2 = ndEnd.Points(1, 2) Thoughts?? What is missing |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() "David Cuthill" wrote in message ... On Thursday, 24 September 2020 at 04:58:19 UTC-6, Peter T wrote: "David Cuthill" wrote in message I am having trouble determining what the end position of an arc is. I would like to determine the coordinates of the end point or start point and then place a textbox or other shape at those same coordinates. Of the attributes of an arc - which describes the top and left of the end point? The top and left that I can obtain seem to provide the position of the top left corner of the bounding box/border of the shape - which may be far from the end point of the actual arc. Thanks for any assistance with this question. ====================== The Arc is described by its Nodes collection, air code - Dim nds As ShapeNodes Dim ndStart as ShapeNode, ndEnd as ShapeNode Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.count) x1 = ndStart.Points(1,1) : y1 = ndStart.Points(1,2) x2 = ndStart.Points(1,1) : y2 = ndEnd.Points(1,2) Peter T Thanks Peter I understand in theory what you are showing but I am having trouble getting it to work in practice I have but together this but get an error at x1=ndstart.points(1,1) .... <Error 424 Object required Dim nds As ShapeNodes Dim ndStart As ShapeNode, ndEnd As ShapeNode Set myArcShape = Worksheets("test").Shapes(1) Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.Count) x1 = ndStart.Points(1, 1): y1 = ndStart.Points(1, 2) x2 = ndStart.Points(1, 1): y2 = ndEnd.Points(1, 2) Thoughts?? What is missing Ah, I forgot, if the Arc (or any shape with freeform type nodes) hasn't had its points manually edited need to trick it into thinking they have been. A bit odd but try including this line which reapplies the first node's exisiting editingtype property, then try returning the point coordinates: nds.SetEditingType 1, ndStart.EditingType However if you have manually edited the arc's points this probably won't help! Peter T |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Thursday, 24 September 2020 at 13:20:17 UTC-6, Peter T wrote:
"David Cuthill" wrote in message ... On Thursday, 24 September 2020 at 04:58:19 UTC-6, Peter T wrote: "David Cuthill" wrote in message I am having trouble determining what the end position of an arc is. I would like to determine the coordinates of the end point or start point and then place a textbox or other shape at those same coordinates. Of the attributes of an arc - which describes the top and left of the end point? The top and left that I can obtain seem to provide the position of the top left corner of the bounding box/border of the shape - which may be far from the end point of the actual arc. Thanks for any assistance with this question. ====================== The Arc is described by its Nodes collection, air code - Dim nds As ShapeNodes Dim ndStart as ShapeNode, ndEnd as ShapeNode Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.count) x1 = ndStart.Points(1,1) : y1 = ndStart.Points(1,2) x2 = ndStart.Points(1,1) : y2 = ndEnd.Points(1,2) Peter T Thanks Peter I understand in theory what you are showing but I am having trouble getting it to work in practice I have but together this but get an error at x1=ndstart.points(1,1) .... <Error 424 Object required Dim nds As ShapeNodes Dim ndStart As ShapeNode, ndEnd As ShapeNode Set myArcShape = Worksheets("test").Shapes(1) Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.Count) x1 = ndStart.Points(1, 1): y1 = ndStart.Points(1, 2) x2 = ndStart.Points(1, 1): y2 = ndEnd.Points(1, 2) Thoughts?? What is missing Ah, I forgot, if the Arc (or any shape with freeform type nodes) hasn't had its points manually edited need to trick it into thinking they have been. A bit odd but try including this line which reapplies the first node's exisiting editingtype property, then try returning the point coordinates: nds.SetEditingType 1, ndStart.EditingType However if you have manually edited the arc's points this probably won't help! Peter T Thanks again Peter but the change still results in the same error. I place the suggested line immediately below Set nds = myArcShape.Nodes |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() "David Cuthill" wrote in message On Thursday, 24 September 2020 at 13:20:17 UTC-6, Peter T wrote: "David Cuthill" wrote in message ... On Thursday, 24 September 2020 at 04:58:19 UTC-6, Peter T wrote: "David Cuthill" wrote in message I am having trouble determining what the end position of an arc is. I would like to determine the coordinates of the end point or start point and then place a textbox or other shape at those same coordinates. Of the attributes of an arc - which describes the top and left of the end point? The top and left that I can obtain seem to provide the position of the top left corner of the bounding box/border of the shape - which may be far from the end point of the actual arc. Thanks for any assistance with this question. ====================== The Arc is described by its Nodes collection, air code - Dim nds As ShapeNodes Dim ndStart as ShapeNode, ndEnd as ShapeNode Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.count) x1 = ndStart.Points(1,1) : y1 = ndStart.Points(1,2) x2 = ndStart.Points(1,1) : y2 = ndEnd.Points(1,2) Peter T Thanks Peter I understand in theory what you are showing but I am having trouble getting it to work in practice I have but together this but get an error at x1=ndstart.points(1,1) .... <Error 424 Object required Dim nds As ShapeNodes Dim ndStart As ShapeNode, ndEnd As ShapeNode Set myArcShape = Worksheets("test").Shapes(1) Set nds = myArcShape.Nodes Set ndStart = nds(1) Set ndEnd = nds(nds.Count) x1 = ndStart.Points(1, 1): y1 = ndStart.Points(1, 2) x2 = ndStart.Points(1, 1): y2 = ndEnd.Points(1, 2) Thoughts?? What is missing Ah, I forgot, if the Arc (or any shape with freeform type nodes) hasn't had its points manually edited need to trick it into thinking they have been. A bit odd but try including this line which reapplies the first node's exisiting editingtype property, then try returning the point coordinates: nds.SetEditingType 1, ndStart.EditingType However if you have manually edited the arc's points this probably won't help! Peter T Thanks again Peter but the change still results in the same error. I place the suggested line immediately below Set nds = myArcShape.Nodes If literally(?) "Immediately below" the 'Set nds =' line I'd expect you now to get the error on the new 'SetEditingType' line because ndStart doesn't refer to anythihng, so move it below the 'Set ndStart =' line or, as I should have better clarified, just above lines that attempt to return the points coordinates. BTW - had the points ever been manually edited? Peter T |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
How to determine the x & y coordinates based on angles for circle? | Excel Discussion (Misc queries) | |||
How do I determine the Left & Top coordinates of a graphed point? | Excel Programming | |||
Determine Cell screen coordinates | Excel Programming | |||
Simple way to convert UTM ED50 coordinates to decimal coordinates? | Excel Programming | |||
Converting MouseDown Coordinates to Chart Point Coordinates | Excel Programming |