Interface IObjectAssemblyPart
  
  
  
    - Namespace
 - KSP.OAB
 
  - Assembly
 - Assembly-CSharp.dll
 
   
  
  
  
    public interface IObjectAssemblyPart : IFlowNode, IDeltaVPart, IEquatable<IDeltaVPart>
   
  
    - Inherited Members
 
    - 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
 
  
    - Extension Methods
 
    - 
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
 
  Properties
  
  
  Assembly
  
  
  
  
  
    IObjectAssembly Assembly { get; set; }
   
  Property Value
  
    - IObjectAssembly
 
    
  
  
  
  AssemblyRelativePosition
  
  
  
  
  
    Vector3 AssemblyRelativePosition { get; set; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  AssemblyRelativeRotation
  
  
  
  
  
    Quaternion AssemblyRelativeRotation { get; set; }
   
  Property Value
  
    - Quaternion
 
    
  
  
  
  AutomaticSuggestedRotation
  
  
  
  
  
    Quaternion AutomaticSuggestedRotation { get; set; }
   
  Property Value
  
    - Quaternion
 
    
  
  
  
  AvailablePart
  
  
  
  
  
    IObjectAssemblyAvailablePart AvailablePart { get; }
   
  Property Value
  
    - IObjectAssemblyAvailablePart
 
    
  
  
  
  BaseAttachmentRotation
  
  
  
  
  
    Quaternion BaseAttachmentRotation { get; }
   
  Property Value
  
    - Quaternion
 
    
  
  
  
  CanAttachToSurfaces
  
  
  
  
  
    bool CanAttachToSurfaces { get; }
   
  Property Value
  
    - bool
 
    
  
  
  
  CanHaveSurfaceAttachedTo
  
  
  
  
  
    bool CanHaveSurfaceAttachedTo { get; }
   
  Property Value
  
    - bool
 
    
  
  
  
  CanStage
  
  
  
  
  
    bool CanStage { get; set; }
   
  Property Value
  
    - bool
 
    
  
  
  
  CanSuggestOrientation
  
  
  
  
  
    bool CanSuggestOrientation { get; }
   
  Property Value
  
    - bool
 
    
  
  
  
  Category
  
  
  
  
  
    PartCategories Category { get; }
   
  Property Value
  
    - PartCategories
 
    
  
  
  
  Children
  
  
  
  
  
    List<IObjectAssemblyPart> Children { get; set; }
   
  Property Value
  
    - List<IObjectAssemblyPart>
 
    
  
  
  
  Colliders
  
  
  
  
  
    Collider[] Colliders { get; }
   
  Property Value
  
    - Collider[]
 
    
  
  
  
  FuelCrossFeed
  
  
  
  
  
    bool FuelCrossFeed { get; set; }
   
  Property Value
  
    - bool
 
    
  
  
  
  HighlightColor
  
  
  
  
  
    Color HighlightColor { get; set; }
   
  Property Value
  
    - Color
 
    
  
  
  
  Highlighted
  
  
  
  
  
    bool Highlighted { get; set; }
   
  Property Value
  
    - bool
 
    
  
  
  
  InStageIndex
  
  
  
  
  
    int InStageIndex { get; set; }
   
  Property Value
  
    - int
 
    
  
  
  
  IsFinalized
  
  
  
  
  
    bool IsFinalized { get; set; }
   
  Property Value
  
    - bool
 
    
  
  
  
  IsSymmetryMirrored
  
  
  
  
  
    bool IsSymmetryMirrored { get; set; }
   
  Property Value
  
    - bool
 
    
  
  
  
  MirrorTechnique
  
  
  
  
  
    MirrorTechnique MirrorTechnique { get; }
   
  Property Value
  
    - MirrorTechnique
 
    
  
  
  
  Modules
  
  
  
  
  
    DictionaryValueList<Type, IPartModule> Modules { get; }
   
  Property Value
  
    - DictionaryValueList<Type, IPartModule>
 
    
  
  
  
  MyNodeConnectedToParent
  
  
  
  
  
    IObjectAssemblyPartNode MyNodeConnectedToParent { get; }
   
  Property Value
  
    - IObjectAssemblyPartNode
 
    
  
  
  
  Nodes
  
  
  
  
  
    List<IObjectAssemblyPartNode> Nodes { get; }
   
  Property Value
  
    - List<IObjectAssemblyPartNode>
 
    
  
  
  
  OrientationPreference
  
  
  
  
  
    OABOrientation OrientationPreference { get; }
   
  Property Value
  
    - OABOrientation
 
    
  
  
  
  OriginalNodeLocalAttachPosition
  
  
  
  
  
    Vector3 OriginalNodeLocalAttachPosition { get; set; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  OriginalPart
  
  
  
  
  
    IObjectAssemblyPart OriginalPart { get; }
   
  Property Value
  
    - IObjectAssemblyPart
 
    
  
  
  
  OriginalPartLocalAttachPosition
  
  
  
  
  
    Vector3 OriginalPartLocalAttachPosition { get; set; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  ParentNodeConnectedToMe
  
  
  
  
  
    IObjectAssemblyPartNode ParentNodeConnectedToMe { get; }
   
  Property Value
  
    - IObjectAssemblyPartNode
 
    
  
  
  
  ParentNodeRelativePosition
  
  
  
  
  
    Vector3 ParentNodeRelativePosition { get; set; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  ParentNodeRelativeRotation
  
  
  
  
  
    Quaternion ParentNodeRelativeRotation { get; set; }
   
  Property Value
  
    - Quaternion
 
    
  
  
  
  ParentPart
  
  
  
  
  
    IObjectAssemblyPart ParentPart { get; }
   
  Property Value
  
    - IObjectAssemblyPart
 
    
  
  
  
  ParentPartRelativePosition
  
  
  
  
  
    Vector3 ParentPartRelativePosition { get; set; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  ParentPartRelativeRotation
  
  
  
  
  
    Quaternion ParentPartRelativeRotation { get; set; }
   
  Property Value
  
    - Quaternion
 
    
  
  
  
  PartSize
  
  
  
  
  
    AssemblySizeFilterType PartSize { get; }
   
  Property Value
  
    - AssemblySizeFilterType
 
    
  
  
  
  
  
  
    Transform PartTransform { get; }
   
  Property Value
  
    - Transform
 
    
  
  
  
  PickupPointOffset
  
  
  
  
  
    Vector3 PickupPointOffset { get; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  PickupRotationPointOffset
  
  
  
  
  
    Vector3 PickupRotationPointOffset { get; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  RawPartModules
  
  
  
  
  
    List<SerializedPartModule> RawPartModules { get; set; }
   
  Property Value
  
    - List<SerializedPartModule>
 
    
  
  
  
  ResourceCosts
  
  
  
  
  
    PartResourceCostDefinition[] ResourceCosts { get; }
   
  Property Value
  
    - PartResourceCostDefinition[]
 
    
  
  
  
  ResourceFlowRequestBroker
  
  
  
  
  
    ResourceFlowRequestBroker ResourceFlowRequestBroker { get; set; }
   
  Property Value
  
    - ResourceFlowRequestBroker
 
    
  
  
  
  Resources
  
  
  
  
  
    IObjectAssemblyResource[] Resources { get; }
   
  Property Value
  
    - IObjectAssemblyResource[]
 
    
  
  
  
  StageType
  
  
  
  
  
    AssemblyPartStageType StageType { get; }
   
  Property Value
  
    - AssemblyPartStageType
 
    
  
  
  
  StagingIconAssetAddress
  
  
  
  
  
    string StagingIconAssetAddress { get; }
   
  Property Value
  
    - string
 
    
  
  
  
  SurfaceAttachmentPositionOffset
  
  
  
  
  
    Vector3 SurfaceAttachmentPositionOffset { get; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  SurfaceAttachmentRotationOffset
  
  
  
  
  
    Quaternion SurfaceAttachmentRotationOffset { get; }
   
  Property Value
  
    - Quaternion
 
    
  
  
  
  SymmetrySet
  
  
  
  
  
    SymmetrySet SymmetrySet { get; set; }
   
  Property Value
  
    - SymmetrySet
 
    
  
  
  
  UniqueId
  
  
  
  
  
    IGGuid UniqueId { get; set; }
   
  Property Value
  
    - IGGuid
 
    
  
  
  
  UserRotationOffset
  
  
  
  
  
    Quaternion UserRotationOffset { get; set; }
   
  Property Value
  
    - Quaternion
 
    
  
  
  
  WorldPosition
  
  
  
  
  
    Vector3 WorldPosition { get; set; }
   
  Property Value
  
    - Vector3
 
    
  
  
  
  WorldRotation
  
  
  
  
  
    Quaternion WorldRotation { get; set; }
   
  Property Value
  
    - Quaternion
 
    
  
  Methods
  
  
  AddDynamicNode(IObjectAssemblyPart, IObjectAssemblyAvailablePartNode)
  
  
  
  
  
    IObjectAssemblyPartNode AddDynamicNode(IObjectAssemblyPart oabPart, IObjectAssemblyAvailablePartNode dynamicNode)
   
  Parameters
  
    oabPart IObjectAssemblyPart 
    
    dynamicNode IObjectAssemblyAvailablePartNode 
    
  
  Returns
  
    - IObjectAssemblyPartNode
 
    
  
  
  
  ApplyColors(Color, Color)
  
  
  
  
  
    void ApplyColors(Color baseColor, Color detailColor)
   
  Parameters
  
    baseColor Color 
    
    detailColor Color 
    
  
  
  
  CalculateOffsetToGround()
  
  
  
  
  
    float CalculateOffsetToGround()
   
  Returns
  
    - float
 
    
  
  
  
  FinalizeLoad(ObjectAssemblyBuilderEvents, IObjectAssemblyAvailablePart)
  
  
  
  
  
    void FinalizeLoad(ObjectAssemblyBuilderEvents events, IObjectAssemblyAvailablePart part)
   
  Parameters
  
    events ObjectAssemblyBuilderEvents 
    
    part IObjectAssemblyAvailablePart 
    
  
  
  
  
  
  
    IEnumerable<Transform> FindModelTransforms(string transformName)
   
  Parameters
  
    transformName string 
    
  
  Returns
  
    - IEnumerable<Transform>
 
    
  
  
  
  FindNodeAttachedPart(IGGuid)
  
  
  
  
  
    IObjectAssemblyPartNode FindNodeAttachedPart(IGGuid attachedPartID)
   
  Parameters
  
    attachedPartID IGGuid 
    
  
  Returns
  
    - IObjectAssemblyPartNode
 
    
  
  
  
  FindNodeWithTag(string)
  
  
  
  
  
    IObjectAssemblyPartNode FindNodeWithTag(string attachNodeTag)
   
  Parameters
  
    attachNodeTag string 
    
  
  Returns
  
    - IObjectAssemblyPartNode
 
    
  
  
  
  GetAnchorPart()
  
  
  
  
  
    IObjectAssemblyPart GetAnchorPart()
   
  Returns
  
    - IObjectAssemblyPart
 
    
  
  
  
  GetPartBounds(ref Bounds)
  
  
  
  
  
    void GetPartBounds(ref Bounds totalBounds)
   
  Parameters
  
    totalBounds Bounds 
    
  
  
  
  HasChildren()
  
  
  
  
  
  Returns
  
    - bool
 
    
  
  
  
  HasModule<T>()
  
  
  
  
  
    bool HasModule<T>() where T : PartComponentModule
   
  Returns
  
    - bool
 
    
  
  Type Parameters
  
    T 
    
  
  
  
  HasParent()
  
  
  
  
  
  Returns
  
    - bool
 
    
  
  
  
  Initialize(IObjectAssemblyAvailablePart, ObjectAssemblyAssets)
  
  
  
  
  
    void Initialize(IObjectAssemblyAvailablePart availablePart, ObjectAssemblyAssets prefabs)
   
  Parameters
  
    availablePart IObjectAssemblyAvailablePart 
    
    prefabs ObjectAssemblyAssets 
    
  
  
  
  NotifyNodesOfDisconnect(IObjectAssemblyPart)
  
  
  
  
  
    void NotifyNodesOfDisconnect(IObjectAssemblyPart disconnectedPart)
   
  Parameters
  
    disconnectedPart IObjectAssemblyPart 
    
  
  
  
  RemoveChildedPart(IObjectAssemblyPart)
  
  
  
  
  
    void RemoveChildedPart(IObjectAssemblyPart child)
   
  Parameters
  
    child IObjectAssemblyPart 
    
  
  
  
  RemoveDynamicNode(IObjectAssemblyPartNode)
  
  
  
  
  
    bool RemoveDynamicNode(IObjectAssemblyPartNode dynamicNode)
   
  Parameters
  
    dynamicNode IObjectAssemblyPartNode 
    
  
  Returns
  
    - bool
 
    
  
  
  
  SetColliders(Collider[])
  
  
  
  
  
    void SetColliders(Collider[] colliders)
   
  Parameters
  
    colliders Collider[] 
    
  
  
  
  SetColors(Color, Color)
  
  
  
  
  
    void SetColors(Color baseColor, Color detailColor)
   
  Parameters
  
    baseColor Color 
    
    detailColor Color 
    
  
  
  
  SetNodeLocalPosition(IObjectAssemblyPartNode, Vector3)
  
  
  
  
  
    void SetNodeLocalPosition(IObjectAssemblyPartNode node, Vector3 newLocalPosition)
   
  Parameters
  
    node IObjectAssemblyPartNode 
    
    newLocalPosition Vector3 
    
  
  
  
  SetNodeLocalScale(IObjectAssemblyPartNode, float)
  
  
  
  
  
    void SetNodeLocalScale(IObjectAssemblyPartNode node, float newScaleFactor)
   
  Parameters
  
    node IObjectAssemblyPartNode 
    
    newScaleFactor float 
    
  
  
  
  SetOriginalPart(IObjectAssemblyPart)
  
  
  
  
  
    void SetOriginalPart(IObjectAssemblyPart original)
   
  Parameters
  
    original IObjectAssemblyPart 
    
  
  
  
  SetParentPart(IObjectAssemblyPart)
  
  
  
  
  
    void SetParentPart(IObjectAssemblyPart parent)
   
  Parameters
  
    parent IObjectAssemblyPart 
    
  
  
  
  ShowNodes(bool, bool, bool)
  
  
  
  
  
    void ShowNodes(bool show, bool onlyShowAvailable = true, bool showSurfaceNodes = true)
   
  Parameters
  
    show bool 
    
    onlyShowAvailable bool 
    
    showSurfaceNodes bool 
    
  
  
  
  TryGetModule(Type, out PartBehaviourModule)
  
  
  
  
  
    bool TryGetModule(Type type, out PartBehaviourModule module)
   
  Parameters
  
    type Type 
    
    module PartBehaviourModule 
    
  
  Returns
  
    - bool
 
    
  
  
  
  TryGetModuleOfInstanceType(Type, out PartBehaviourModule)
  
  
  
  
  
    bool TryGetModuleOfInstanceType(Type type, out PartBehaviourModule module)
   
  Parameters
  
    type Type 
    
    module PartBehaviourModule 
    
  
  Returns
  
    - bool
 
    
  
  
  
  TryGetModuleOfInstanceType<T>(out T)
  
  
  
  
  
    bool TryGetModuleOfInstanceType<T>(out T module) where T : PartBehaviourModule
   
  Parameters
  
    module T 
    
  
  Returns
  
    - bool
 
    
  
  Type Parameters
  
    T 
    
  
  
  
  TryGetModule<T>(out T)
  
  
  
  
  
    bool TryGetModule<T>(out T module) where T : PartBehaviourModule
   
  Parameters
  
    module T 
    
  
  Returns
  
    - bool
 
    
  
  Type Parameters
  
    T