<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Dimension constraint positioning in Inventor Programming - iLogic, Macros, AddIns &amp; Apprentice</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9044182#M101533</link>
    <description>&lt;P&gt;Sorry I'm only allowed to write code for my current organization or share bits of code that I have already written.&amp;nbsp; As far as I can go is 'psuedo' code, and what you need is going to take some time to work out.&amp;nbsp; Also it needs to be your work out, because only you know the end purpose of the code.&amp;nbsp; Besides it could be fun (if not excruciatingly educational).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 24 Sep 2019 15:18:22 GMT</pubDate>
    <dc:creator>JamieVJohnson2</dc:creator>
    <dc:date>2019-09-24T15:18:22Z</dc:date>
    <item>
      <title>Dimension constraint positioning</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9040759#M101490</link>
      <description>&lt;P&gt;I want create the situaition as in the photo via ilogic. I know how to create a line add the constraints and the dimension constraint. The problem i encountered is postioning the dimension constraint a little above the line and in the middle of the line.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there anyway to automaticly postion the dimension constraint like in the picture via ilogic for any kind of view&amp;nbsp; and any line length????&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the code so far:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;partDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; 
&lt;SPAN&gt;partDoc&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;activedocument&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;partDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Inventor&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;PartComponentDefinition&lt;/SPAN&gt; 
&lt;SPAN&gt;partDef&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;partDoc&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt; 

&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;SPAN&gt;set a reference to the transient geometry collection.&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oTransGeom&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;
&lt;SPAN&gt;oTransGeom&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;


&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;SPAN&gt; Create a new sketch.&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oSketch&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PlanarSketch&lt;/SPAN&gt; 
&lt;SPAN&gt;oSketch&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;partDef&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Sketches&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Add&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;partDef&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;WorkPlanes&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Item&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;False&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;

&lt;SPAN&gt;oSketch&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;edit&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oOriginSketchPoint&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;SketchPoint&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;oSketch&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;AddByProjectingEntity&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;PartDef&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;WorkPoints&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Item&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;
&lt;SPAN&gt;oline&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;oSketch&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;SketchLines&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;AddByTwoPoints&lt;/SPAN&gt; &lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;oOriginSketchPoint&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;100&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;

&lt;SPAN&gt;oSketch&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;GeometricConstraints&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;AddHorizontal&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;oline&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;
&lt;SPAN&gt;oSketch&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;DimensionConstraints&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;AddTwoPointDistance&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;oline&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;startSketchPoint&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt;oline&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;EndSketchPoint&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;DimensionOrientationEnum&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;kHorizontalDim&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN&gt;oline&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Length&lt;/SPAN&gt;&lt;SPAN&gt;*&lt;/SPAN&gt;&lt;SPAN&gt;0.1&lt;/SPAN&gt;&lt;SPAN&gt;))&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 23 Sep 2019 14:38:23 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9040759#M101490</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-09-23T14:38:23Z</dc:date>
    </item>
    <item>
      <title>Re: Dimension constraint positioning</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9040949#M101496</link>
      <description>&lt;P&gt;Its all in your point math.&amp;nbsp; Calculated the middle point offset from the line to be exactly where you want the text center to be.&amp;nbsp; tg.CreatePoint(x,y) use line midpoint or [ startpoint + ((line startpoint - line endpoint)/2)] to get the midpoint. &amp;nbsp;&lt;/P&gt;&lt;P&gt;use line geometry 3d direction cross product (use the sketch plane normal vector for input) to get a vector (3d) that is 90deg from the line direction, but this has to be back translated from 3d model space to the 2d sketch space.&amp;nbsp; Or you could calculate your own 2d cross product (a 2d vector).&amp;nbsp; Or you could just use a rotation calculation.&amp;nbsp; Then find a point that is from midpoint along the new direction a distance of your intended offset (such as 1/4").&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If you know line direction is vertical or horizontal from the beginning, then you wouldn't need vector calculus to pick a position, you simply need to manipulate x and y by adding offsets.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Vertical line: x = midpoint x + offset, y = midpoint y&lt;/P&gt;&lt;P&gt;Horizontal line: x = midpoint x, y = midpoint y + offset&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 23 Sep 2019 15:43:34 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9040949#M101496</guid>
      <dc:creator>JamieVJohnson2</dc:creator>
      <dc:date>2019-09-23T15:43:34Z</dc:date>
    </item>
    <item>
      <title>Re: Dimension constraint positioning</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9041691#M101507</link>
      <description>&lt;P&gt;&amp;nbsp;I was afraid there is no easy way for this. I actually don't understand using vectors in inventor and translating from 3dmodel space to &lt;SPAN&gt;&amp;nbsp;2d sketch space&lt;/SPAN&gt;,I always get some kind an error.&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/3677112"&gt;@JamieVJohnson2&lt;/a&gt;&amp;nbsp;can i trouble you to finish this code with the method you explained in the reply if it is not too much trouble?????&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;partDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; 
&lt;SPAN&gt;partDoc&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;partDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;PartComponentDefinition&lt;/SPAN&gt; 
&lt;SPAN&gt;partDef&lt;/SPAN&gt; = &lt;SPAN&gt;partDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt; 

&lt;SPAN&gt;'set a reference to the transient geometry collection.&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oTransGeom&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;
&lt;SPAN&gt;oTransGeom&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;


&lt;SPAN&gt;' Create a new sketch.&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oSketch&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PlanarSketch&lt;/SPAN&gt; 
&lt;SPAN&gt;oSketch&lt;/SPAN&gt; = &lt;SPAN&gt;partDef&lt;/SPAN&gt;.&lt;SPAN&gt;Sketches&lt;/SPAN&gt;.&lt;SPAN&gt;Add&lt;/SPAN&gt;(&lt;SPAN&gt;partDef&lt;/SPAN&gt;.&lt;SPAN&gt;WorkPlanes&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(1), &lt;SPAN&gt;False&lt;/SPAN&gt;)

&lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;Edit&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oOriginSketchPoint&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;SketchPoint&lt;/SPAN&gt; = &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;AddByProjectingEntity&lt;/SPAN&gt;(&lt;SPAN&gt;partDef&lt;/SPAN&gt;.&lt;SPAN&gt;WorkPoints&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(1))
&lt;SPAN&gt;oline&lt;/SPAN&gt; = &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;SketchLines&lt;/SPAN&gt;.&lt;SPAN&gt;AddByTwoPoints&lt;/SPAN&gt;(&lt;SPAN&gt;oOriginSketchPoint&lt;/SPAN&gt;, &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;.&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;(- 100, - 100))&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 23 Sep 2019 21:36:55 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9041691#M101507</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-09-23T21:36:55Z</dc:date>
    </item>
    <item>
      <title>Re: Dimension constraint positioning</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9044182#M101533</link>
      <description>&lt;P&gt;Sorry I'm only allowed to write code for my current organization or share bits of code that I have already written.&amp;nbsp; As far as I can go is 'psuedo' code, and what you need is going to take some time to work out.&amp;nbsp; Also it needs to be your work out, because only you know the end purpose of the code.&amp;nbsp; Besides it could be fun (if not excruciatingly educational).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 24 Sep 2019 15:18:22 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/dimension-constraint-positioning/m-p/9044182#M101533</guid>
      <dc:creator>JamieVJohnson2</dc:creator>
      <dc:date>2019-09-24T15:18:22Z</dc:date>
    </item>
  </channel>
</rss>

