Component Class

The Component class represents a component. A component is a modelling tool that typically assembles multiple parts to build some type of a structure, for example a hall macro or at a smaller scale a reinforcement component (a macro). Also, a custom part is a component.
Inheritance Hierarchy

Namespace:  Tekla.Structures.Model
Assembly:  Tekla.Structures.Model (in Tekla.Structures.Model.dll) Version: 2023.0.3
Syntax
[SerializableAttribute]
public sealed class Component : BaseComponent, 
	IAssemblable

The Component type exposes the following members.

Constructors
  NameDescription
Public methodComponent
Creates a new component instance.
Public methodComponent(ComponentInput)
Creates a new component instance with the given component input.
Top
Properties
  NameDescription
Public propertyIdentifier
The identifier of the object.
(Inherited from Object.)
Public propertyIsUpToDate
Gets if the object does not have a modification which is not shared.
(Inherited from ModelObject.)
Public propertyModificationTime
Gets latest time of the object was modified or created.
(Inherited from ModelObject.)
Public propertyName
The name of the component. The name identifies custom components or plug-ins.
(Inherited from BaseComponent.)
Public propertyNumber
The number of the component. A number greater than zero identifies system components, for custom components the number is CUSTOM_OBJECT_NUMBER, and for plug-ins the number is PLUGIN_OBJECT_NUMBER.
(Inherited from BaseComponent.)
Top
Methods
  NameDescription
Public methodCompareTo
Compares Identifiers of model objects.
(Inherited from ModelObject.)
Public methodDelete
Deletes the component instance with the given ID from the model database.
(Overrides ModelObjectDelete.)
Public methodEquals
Check if Identifiers of model objects are same.
(Inherited from ModelObject.)
Public methodCode exampleGetAllReportProperties
Retrieves all properties for the model object in one hashtable. Type for the returned value must be checked using type casting.
(Inherited from ModelObject.)
Public methodGetAllUserProperties
Retrieves all properties for the model object in one hashtable. Type for the returned value must be checked using type casting.
(Inherited from ModelObject.)
Public methodGetAssembly
Returns the assembly that the component belongs to.
Public methodGetAttribute(String, Double)
Retrieves the attribute with the given name.
(Inherited from BaseComponent.)
Public methodGetAttribute(String, Int32)
Retrieves the attribute with the given name.
(Inherited from BaseComponent.)
Public methodGetAttribute(String, String)
Retrieves the attribute with the given name.
(Inherited from BaseComponent.)
Public methodGetBooleans
Returns an enumerator of all the connected boolean objects.
Public methodGetChildren
Returns an enumerator of all the children model objects.
(Inherited from ModelObject.)
Public methodGetComponentInput
Returns the component input object.
Public methodGetComponents
Returns an enumerator of all the connected components.
Public methodGetCoordinateSystem
Returns the coordinate system for the given model object.
(Inherited from ModelObject.)
Public methodGetDoubleReportProperties
Retrieves multiple double report properties for the model object. It is faster to fetch multiple properties at once.
(Inherited from ModelObject.)
Public methodGetDoubleUserProperties
Retrieves all double properties for the model object.
(Inherited from ModelObject.)
Public methodGetDynamicStringProperty
Gets a dynamic string property from the model object.
(Inherited from ModelObject.)
Public methodGetFatherComponent
Returns the father component of the model object.
(Inherited from ModelObject.)
Public methodGetHierarchicObjects
Returns an enumerator of all the connected hierarchic objects.
(Inherited from ModelObject.)
Public methodGetIntegerReportProperties
Retrieves multiple integer report properties for the model object. It is faster to fetch multiple properties at once.
(Inherited from ModelObject.)
Public methodGetIntegerUserProperties
Retrieves all integer properties for the model object.
(Inherited from ModelObject.)
Public methodGetPhase
Retrieves the phase of the model object (the phase number, the phase name, the phase comment and whether the phase is the current one or not).
(Inherited from ModelObject.)
Public methodGetReportProperty(String, Double)
Retrieves a double property of the report for the model object.
(Inherited from ModelObject.)
Public methodGetReportProperty(String, Int32)
Retrieves an integer property of the report for the model object.
(Inherited from ModelObject.)
Public methodGetReportProperty(String, String)
Retrieves a string property of the report for the model object.
(Inherited from ModelObject.)
Public methodGetStringReportProperties
Retrieves multiple string report properties for the model object. It is faster to fetch multiple properties at once.
(Inherited from ModelObject.)
Public methodGetStringUserProperties
Retrieves all string properties for the model object.
(Inherited from ModelObject.)
Public methodGetUserProperty(String, Double)
Retrieves a double property for the model object.
(Inherited from ModelObject.)
Public methodGetUserProperty(String, Int32)
Retrieves an integer property for the model object.
(Inherited from ModelObject.)
Public methodGetUserProperty(String, String)
Retrieves a string property for the model object.
(Inherited from ModelObject.)
Public methodInsert
Inserts the component into the model database. The component input needs to be set.
(Overrides ModelObjectInsert.)
Public methodLoadAttributesFromFile
Loads the attributes for the component from the given file. These attributes will be loaded before all the attributes that have been set with the SetAttribute methods, so any attributes that are set with SetAttribute will override those loaded from the given standard file.
(Inherited from BaseComponent.)
Public methodModify
Modifies the existing component in the model database to match the current one.
(Overrides ModelObjectModify.)
Public methodSelect
Selects a component from the model database. The component ID must be set.
(Overrides ModelObjectSelect.)
Public methodSetAttribute(String, Double)
Sets the attribute's value to the given value.
(Inherited from BaseComponent.)
Public methodSetAttribute(String, Int32)
Sets the attribute's value to the given value.
(Inherited from BaseComponent.)
Public methodSetAttribute(String, String)
Sets the attribute's value to the given value.
(Inherited from BaseComponent.)
Public methodSetComponentInput
Sets the component input object for the component. The component input object contains all the input objects and positions that are needed for the component creation.
Public methodSetDynamicStringProperty
Sets a dynamic string property for the model object.
(Inherited from ModelObject.)
Public methodSetLabel
Sets a label for an object when a new instance is created, this method must be called before Insert. The label is used in plug-ins for identifying the changed object in modification.
(Inherited from ModelObject.)
Public methodSetPhase
Sets the phase of the model object.
(Inherited from ModelObject.)
Public methodSetUserProperties
Sets multiple properties for the model object.
(Inherited from ModelObject.)
Public methodSetUserProperty(String, Double)
Sets a double property for the model object.
(Inherited from ModelObject.)
Public methodSetUserProperty(String, Int32)
Sets an integer property for the model object.
(Inherited from ModelObject.)
Public methodSetUserProperty(String, String)
Sets a string property for the model object.
(Inherited from ModelObject.)
Top
Examples
using Tekla.Structures.Model;
using Tekla.Structures.Geometry3d;
using System;

public class Example
{
       public void Example1()
       {
           Beam B = new Beam(new Point(12000, 0, 0), new Point(12000, 0, 6000));
           B.Profile.ProfileString = "380*380";
           B.Material.MaterialString = "K40-1";
           if (B.Insert())
           {
               Component C = new Component();
               C.Name = "Component Test";
               C.Number = 30000063;

               ComponentInput CI = new ComponentInput();
               CI.AddInputObject(B);

               C.SetComponentInput(CI);

               C.LoadAttributesFromFile("standard");

               C.SetAttribute("side_bar_space", 333.0);

               if (!C.Insert())
               {
                   Console.WriteLine("Component Insert failed");
               }
               else
               {
                   Console.WriteLine(C.Identifier.ID);

                   Double DValue = 0.0;
                   if (!C.GetAttribute("side_bar_space", ref DValue) || DValue != 333)
                       Console.WriteLine("Component GetAttribute failed");
               }
           }
       }
}
See Also
Was this helpful?
The feedback you give here is not visible to other users. We use your comments to improve the content.
Previous
Next