Para la programación utilizando la interfaz COM, un apoyo en nudo tiene las propiedades "ReferenceSystem" y "UserDefinedReferenceSystem". "ReferenceSystem" le permite definir el tipo de sistema de coordenadas definido por el usuario (por ejemplo, "Rotated" o "Coordinate System") y, dependiendo del tipo que se haya seleccionado, este tipo se define a través de "UserDefinedReferenceSystem".
En el siguiente ejemplo, se estableció el "Sistema de coordenadas" como el tipo y también se creó un sistema de coordenadas definido por el usuario para él:
//crear un sistema de coordenadas definido por el usuarioIGuideObjects iGuide = iModel.GetGuideObjects ();
//eliminar acogedor No 2UserCoordinateSystem [] csList = iGuide.GetCoordinateSystems ();if (csList.Length> 1){para (int i = 0; i <csList.Length; ++ i){if (csList [i] .No == 2){iGuide.PrepareModification ();iGuide.DeleteObjects (GuideObjectType.CoordinateSystemObject, "2");iGuide.FinishModification ();}}}
//definir nuevo acogedor No 2UserCoordinateSystem uCs = nuevo UserCoordinateSystem ();uCs.Name = "prueba";uCs.Comment = "prueba";uCs.No = 2;uCs.IsValid = true;
uCs.Origin.X = 1;uCs.Origin.Y = 0;uCs.Origin.Z = 1;
uCs.Point1.X = 2;uCs.Point1.Y = 0;uCs.Point1.Z = 1;
uCs.Point2.X = 1;uCs.Point2.Y = 1;uCs.Point2.Z = 2;
//establecer acogedor No 2iGuide.PrepareModification ();iGuide.SetCoordinateSystem (uCs);iGuide.FinishModification ();
//crear apoyo en nudo con acogedor definido por el usuarioNodalSupport ns = new NodalSupport ();
ns.SupportConstantX = -1;ns.SupportConstantY = -1;ns.SupportConstantZ = -1;
ns.RestraintConstantX = -1;ns.RestraintConstantY = 0;ns.RestraintConstantZ = -1;
ns.Comment = "acogedor definido por el usuario";ns.NodeList = "1";ns.ReferenceSystem = ReferenceSystemType.UserDefinedSystemType;
ns.UserDefinedReferenceSystem.ObjectNo = 2;ns.UserDefinedReferenceSystem.Type = UserDefinedAxisSystemType.DefinedCoordinateSystemType;
iModData.PrepareModification ();iModData.SetNodalSupport (ns);iModData.FinishModification ();
Para poder crear el sistema de coordenadas, se requiere la interfaz para los objetos guía: ' IGuideObjects '. Con la función "DeleteObjects ()", primero se elimina un sistema de coordenadas existente de Número 2 y se crea uno nuevo con "SetCoordinateSystem ()". Tenga en cuenta el bloque "Preparar/Finalizar-Modificación" para poder transferir el nuevo elemento.
El apoyo en nudo se transfiere a través de la interfaz "IModelData". De nuevo, se requiere el bloque "Preparar/Finalizar-Modificación".