public static void VectorChangeColor(string vectorName, IAgStkObject stkObject, Color SelectedColor) { IAgAircraft _aircraft = stkObject as IAgAircraft; IAgCrdn _vectorVGT = stkObject.Vgt.Vectors[vectorName] as IAgCrdn; IAgVORefCrdnVector _vectorVO = _aircraft.VO.Vector.RefCrdns.Add(AgEGeometricElemType.eVectorElem, _vectorVGT.QualifiedPath) as IAgVORefCrdnVector; _vectorVO.Color = SelectedColor; }
private static void TurnOnTrueScale(AgSatellite satObj, string type) { string name = "Satellite/" + satObj.InstanceName + " " + type; IAgVORefCrdnVector ecc = GetVector(satObj, name) as IAgVORefCrdnVector; if (type.Contains("Periapsis") || type.Contains("Apoapsis")) { ecc.TrueScale = true; } }
private static void ShowVector(AgSatellite satObj, string type) { string name = "Satellite/" + satObj.InstanceName + " " + type; IAgVORefCrdn ecc = GetVector(satObj, name); ecc.Visible = true; ecc.LabelVisible = true; IAgVORefCrdnVector eccVector = ecc as IAgVORefCrdnVector; eccVector.DrawAtCB = true; TurnOnTrueScale(satObj, type); }
public static void VectorChangePoint(string vectorName, string OriginPointName, IAgStkObject stkObject) { string VectorDisplayOrigin = OriginPointName; //IAgAircraft _aircraft = stkObject as IAgAircraft; IAgCrdn vector = stkObject.Vgt.Vectors[vectorName] as IAgCrdn; IAgCrdn point = stkObject.Vgt.Points[OriginPointName] as IAgCrdn; IAgVORefCrdnCollection refCrdns = GetRefCrdns(stkObject); IAgVORefCrdnVector vectorVO = refCrdns.GetCrdnByName(AgEGeometricElemType.eVectorElem, vector.QualifiedPath) as IAgVORefCrdnVector; vectorVO.DrawAtPoint = true; vectorVO.Point = point.QualifiedPath; }
private void createVectorButton_Click(object sender, EventArgs e) { //Create vector between objects string accessFromName = cbAccessFrom.GetItemText(cbAccessFrom.SelectedItem); string accessToName = cbAccessTo.GetItemText(cbAccessTo.SelectedItem); IAgStkObject fromObj = CommonData.StkRoot.GetObjectFromPath(accessFromName); IAgStkObject toObj = CommonData.StkRoot.GetObjectFromPath(accessToName); IAgCrdnVectorGroup vectors = fromObj.Vgt.Vectors; IAgCrdnVectorDisplacement vector = null; string vectorName = "From" + fromObj.InstanceName + "To" + toObj.InstanceName; if (vectors.Contains(vectorName)) { vector = (IAgCrdnVectorDisplacement)vectors[vectorName]; } else { vector = (IAgCrdnVectorDisplacement)vectors.Factory.Create(vectorName, "description", AGI.STKVgt.AgECrdnVectorType.eCrdnVectorTypeDisplacement); } vector.Destination.SetPoint(toObj.Vgt.Points["Center"]); vector.Origin.SetPoint(fromObj.Vgt.Points["Center"]); // Visualize //if (fromObj.ClassName == "Facility") //{ // fromObj2 = fromObj as IAgFacility; //} //else if (fromObj.ClassName == "Satellite") //{ // fromObj2 = fromObj as IAgSatellite; //} //else if (fromObj.ClassName == "Sensor") //{ // fromObj2 = fromObj as IAgSensor; //} //else if (fromObj.ClassName == "Aircraft") //{ // fromObj2 = fromObj as IAgAircraft; //} //else //{ // return; //} try { IAgFacility fromObj2 = fromObj as IAgFacility; IAgVORefCrdnVector boresightVector = fromObj2.VO.Vector.RefCrdns.Add(AgEGeometricElemType.eVectorElem, fromObj.ClassName + "/" + fromObj.InstanceName + " " + vectorName + " Vector") as IAgVORefCrdnVector; fromObj2.VO.Vector.VectorSizeScale = 4.0; } catch { } try { IAgSatellite fromObj2 = fromObj as IAgSatellite; IAgVORefCrdnVector boresightVector = fromObj2.VO.Vector.RefCrdns.Add(AgEGeometricElemType.eVectorElem, fromObj.ClassName + "/" + fromObj.InstanceName + " " + vectorName + " Vector") as IAgVORefCrdnVector; fromObj2.VO.Vector.VectorSizeScale = 4.0; } catch { } try { IAgAircraft fromObj2 = fromObj as IAgAircraft; IAgVORefCrdnVector boresightVector = fromObj2.VO.Vector.RefCrdns.Add(AgEGeometricElemType.eVectorElem, fromObj.ClassName + "/" + fromObj.InstanceName + " " + vectorName + " Vector") as IAgVORefCrdnVector; fromObj2.VO.Vector.VectorSizeScale = 4.0; } catch { } try { IAgSensor fromObj2 = fromObj as IAgSensor; IAgVORefCrdnVector boresightVector = fromObj2.VO.Vector.RefCrdns.Add(AgEGeometricElemType.eVectorElem, fromObj.ClassName + "/" + fromObj.InstanceName + " " + vectorName + " Vector") as IAgVORefCrdnVector; fromObj2.VO.Vector.VectorSizeScale = 4.0; } catch { } }