Add angular dimension between sketch lines
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
I'm trying to use sketchlines to add two angular dimensions in a drawing view (and having no luck). What am I missing here?
double dOutX = 16.25 * 2.54;
double dOutY = 11.5 * 2.54;
double dInX = 14.0 * 2.54;
double dInY = 11.5 * 2.54;
double dTanX = 7.84615 * 2.54;
double dTanY = -3.26923 * 2.54;
oIDraftDoc = (DrawingDocument)oInventorApp.ActiveDocument;
oISheet = oIDraftDoc.Sheets[1];
oIBaseView = oISheet.DrawingViews[1];
oIDwgSketch = oIBaseView.Sketches.Add();
oISketchLines = oIDwgSketch.SketchLines;
oISketchArcs = oIDwgSketch.SketchArcs;
oISketchCircles = oIDwgSketch.SketchCircles;
oIAssyDoc = oIBaseView.ReferencedDocumentDescriptor.ReferencedDocument;
oIAssyCompDef = oIAssyDoc.ComponentDefinition;
oIWorkPoint = oIAssyCompDef.WorkPoints.AddFixed(oITransGeo.CreatePoint(0, 0, 0));
oICenterMark = oISheet.Centermarks.AddByWorkFeature(oIWorkPoint, oIBaseView, oICenterMarkStyle);
Point2d oCenterPoint = oIBaseView.ModelToDrawingViewSpace(oIWorkPoint.Point);
oIPoint2d[0] = oITransGeo.CreatePoint2d(oCenterPoint.X - dOutX, oCenterPoint.Y + dOutY);
oIPoint2d[1] = oITransGeo.CreatePoint2d(oCenterPoint.X - dInX, oCenterPoint.Y + dInY);
oIPoint2d[2] = oITransGeo.CreatePoint2d(oCenterPoint.X - dTanX, oCenterPoint.Y + dTanY);
oIPoint2d[3] = oITransGeo.CreatePoint2d(oCenterPoint.X + dTanX, oCenterPoint.Y + dTanY);
oIPoint2d[4] = oITransGeo.CreatePoint2d(oCenterPoint.X + dInX, oCenterPoint.Y + dInY);
oIPoint2d[5] = oITransGeo.CreatePoint2d(oCenterPoint.X + dOutX, oCenterPoint.Y + dOutY);
oIDwgSketch.Edit();
oISketchLine[0] = oISketchLines.AddByTwoPoints(oIPoint2d[0], oIPoint2d[1]);
oISketchLine[1] = oISketchLines.AddByTwoPoints(oISketchLine[0].EndSketchPoint, oIPoint2d[2]);
oISketchLine[2] = oISketchLines.AddByTwoPoints(oIPoint2d[3], oIPoint2d[4]);
oISketchLine[3] = oISketchLines.AddByTwoPoints(oISketchLine[2].EndSketchPoint, oIPoint2d[5]);
oISketchArc[0] = oISketchArcs.AddByCenterStartEndPoint(oCenterPoint, oISketchLine[1].EndSketchPoint, oISketchLine[2].StartSketchPoint, true);
oIDwgSketch.ExitEdit();
oIGeoIntent1 = oISheet.CreateGeometryIntent(oISketchLine[2]);
oIGeoIntent2 = oISheet.CreateGeometryIntent(oISketchLine[3]);
oIDrawingDims = oISheet.DrawingDimensions;
oIPoint2d[7] = oITransGeo.CreatePoint2d(oIBaseView.Left + oIBaseView.Width + 0.05, oIBaseView.Top + 0.05);
oIDim[1] = (GeneralDimension)oIDrawingDims.GeneralDimensions.AddAngular(oCenterPoint, oIGeoIntent1, oIGeoIntent2, null, true, false);