i want to add length of curve (in startpoint and endpoint)
add from startpoint = 0.2 m
add from endpoint = 0.2 m
i am confuse in red of code how to calculate vectorhow to calculate this part code
var dist = vec1 * 0.2; // i am confuse in this code how to calculate vector to add 0.2 m
[CommandMethod("xt")]
public void XtendMethod()
{
Document doc = Application.DocumentManager.MdiActiveDocument;
Editor ed = doc.Editor;
Database db = doc.Database;
try
{
var pso
= new PromptSelectionOptions
(); pso.MessageForAdding = "\nSelect Curve";
var psr = ed.GetSelection(pso);
if (psr.Status != PromptStatus.OK) return;
using (Transaction tr= doc.TransactionManager.StartTransaction())
{
foreach (SelectedObject s in psr.Value)
{
Curve curve = tr.GetObject(s.ObjectId, OpenMode.ForWrite) as Curve;
var length = curve.GetDistanceAtParameter(1);
var vec1 = (curve.EndPoint - curve.StartPoint).GetNormal();
var dist = vec1 * 0.2; // i am confuse in this code how to calculate vector to add 0.2 m
Point3d nEp = curve.GetPointAtParameter(1) + dist;
Point3d nSp = curve.GetPointAtParameter(0) - dist;
curve.Extend(true, nSp);
curve.Extend(false, nEp);
}
tr.Commit();
}
}
catch (System.Exception ex)
{
ed.WriteMessage(ex.Message);
}
}