API Reference

Detailed and full API reference helps you master Tekla development

This is the most recent version of Tekla Open API.
For older versions, please visit Tekla Warehouse.

LevelMark Class

The LevelMark class defines a drawing object that is displayed as a level mark in a drawing. See the Tekla Structures help for more information.
Inheritance Hierarchy

Namespace:  Tekla.Structures.Drawing
Assembly:  Tekla.Structures.Drawing (in Tekla.Structures.Drawing.dll) Version: 2019.0.0.0 (2019.0.0.0)
Syntax
[SerializableAttribute]
public sealed class LevelMark : DrawingObject, 
	IAxisAlignedBoundingBox, IObjectAlignedBoundingBox, IMovableRelative, IPlacing, IHasChildren, 
	IHideable

The LevelMark type exposes the following members.

Constructors
  Name Description
Public method LevelMark(ViewBase, Point, Point)
Initializes a new instance of the LevelMark class using the default standard attributes.
Public method LevelMark(ViewBase, Point, Point, LevelMarkLevelMarkAttributes)
Initializes a new instance of the LevelMark class using the given attributes.
Public method LevelMark(ViewBase, Point, Point, ModelObject)
Initializes a new instance of the LevelMark class using the given attributes.
Public method LevelMark(ViewBase, Point, Point, PlacingBase)
Initializes a new instance of the LevelMark class using the given attributes.
Public method LevelMark(ViewBase, Point, Point, ModelObject, LevelMarkLevelMarkAttributes)
Initializes a new instance of the LevelMark class using the given attributes.
Public method LevelMark(ViewBase, Point, Point, PlacingBase, LevelMarkLevelMarkAttributes)
Initializes a new instance of the LevelMark class using the given attributes.
Public method LevelMark(ViewBase, Point, Point, PlacingBase, ModelObject)
Initializes a new instance of the LevelMark class using the given attributes.
Public method LevelMark(ViewBase, Point, Point, PlacingBase, ModelObject, LevelMarkLevelMarkAttributes)
Initializes a new instance of the LevelMark class using the given attributes.
Top
Properties
  Name Description
Public property Attributes
Gets or sets the level mark attributes.
Public property BasePoint
Gets or sets the level mark base point.
Public property Hideable
Gets the information if this object is hidden or not or if it should be.
Public property InsertionPoint
Gets or sets the level mark insertion point.
Public property ModelObjectIdentifier
Gets the model object identifier
Public property Placing
Gets or sets the current placing of the object. See the placing types for different placing options.
Public property QueryReturnValue
Status information about the latest database operation (select, insert, modify, delete).
(Inherited from DatabaseObject.)
Public property SubType
Gets or sets the subtype of the level mark.
Top
Methods
  Name Description
Public method Delete
Deletes the level mark from the current drawing database.
(Overrides DatabaseObjectDelete.)
Public method GetAxisAlignedBoundingBox
Returns the axis aligned bounding box of the level mark (rectangle format).
Public method GetDoubleUserProperties(DictionaryString, Double)
Retrieves all double user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public method GetDoubleUserProperties(ListString, DictionaryString, Double)
Retrieves all double user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public method GetDrawing
Gets the drawing where the drawing object is.
(Inherited from DrawingObject.)
Public method GetIntegerUserProperties(DictionaryString, Int32)
Retrieves all integer user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public method GetIntegerUserProperties(ListString, DictionaryString, Int32)
Retrieves all integer user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public method GetObjectAlignedBoundingBox
Returns the bounding box of the level mark (rectangle format).
Public method GetObjects
Gets the children objects of the current object.
Public method GetObjects(Type)
Gets the children objects of the current object that are of certain types.
Public method GetRelatedObjects
Gets the related objects of the current object.
(Inherited from DrawingObject.)
Public method GetRelatedObjects(Type)
Gets the related objects of the current object that are of certain types.
(Inherited from DrawingObject.)
Public method GetStringUserProperties(DictionaryString, String)
Retrieves all string user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public method GetStringUserProperties(ListString, DictionaryString, String)
Retrieves all string user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public method GetUserProperty(String, Double)
Gets a double property from the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public method GetUserProperty(String, Int32)
Gets an integer property from the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public method GetUserProperty(String, String)
Gets a string property from the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public method GetView
Gets the view where the drawing object is.
(Inherited from DrawingObject.)
Public method Insert
Inserts the level mark into the current drawing database.
(Overrides DatabaseObjectInsert.)
Public method IsEqual
Compares the current object with an object of the same type.
(Overrides DrawingObjectIsEqual(Object).)
Public method IsSameDatabaseObject
Returns true if the current object and the given object are referencing the same database object.
(Inherited from DatabaseObject.)
Public method Modify
Modifies the level mark in the current drawing database.
(Overrides DatabaseObjectModify.)
Public method MoveObjectRelative
Moves the object using the move vector.
Public method Select
Selects the level mark from the current drawing database.
(Overrides DatabaseObjectSelect.)
Public method SetUserProperty(String, Double)
Sets a double property for the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public method SetUserProperty(String, Int32)
Sets an integer property for the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public method SetUserProperty(String, String)
Sets a string property for the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public method ToString
Changes the string presentation of the drawing object.
(Inherited from DrawingObject.)
Top
Examples
using Tekla.Structures.Drawing;
using Tekla.Structures.Drawing.UI;
using Tekla.Structures.Geometry3d;

namespace Example
{
    class Program
    {
        public static void LevelMarkModify()
        {
            DrawingHandler myDrawingHandler = new DrawingHandler();
            DrawingObjectSelector dos = myDrawingHandler.GetDrawingObjectSelector();
            DrawingObjectEnumerator allObjectsOnSheet = dos.GetSelected();
            while(allObjectsOnSheet.MoveNext())
            {
                if(allObjectsOnSheet.Current is Tekla.Structures.Drawing.LevelMark)
                {
                    LevelMark levelMark = allObjectsOnSheet.Current as Tekla.Structures.Drawing.LevelMark;
                    levelMark.Attributes.Font.Height = 5;
                    levelMark.Attributes.Font.Color = DrawingColors.Red;
                    levelMark.Attributes.Frame.Color = DrawingColors.Yellow;
                    levelMark.Attributes.Frame.Type = FrameTypes.Round;
                    bool res = levelMark.Modify();
                }
            }
        }
        public static LevelMark GetSelectedLevelMark()
        {
            DrawingHandler myDrawingHandler = new DrawingHandler();
            DrawingObjectSelector dos = myDrawingHandler.GetDrawingObjectSelector();
            DrawingObjectEnumerator allObjectsOnSheet = dos.GetSelected();
            while(allObjectsOnSheet.MoveNext())
            {
                if(allObjectsOnSheet.Current is Tekla.Structures.Drawing.LevelMark)
                {
                    LevelMark levelMark = allObjectsOnSheet.Current as Tekla.Structures.Drawing.LevelMark;
                    return levelMark;
                }
            }
            return null;
        }

        public static void LevelMarkCreateAsACopy()
        {
            var levelmark = GetSelectedLevelMark();
            levelmark.InsertionPoint.X += 100;
            levelmark.Insert();
        }
        public static void LevelMarkCreate()
        {
            DrawingHandler MyDrawingHandler = new DrawingHandler();
            var drawing1 = MyDrawingHandler.GetActiveDrawing();
            var sheet1 = drawing1.GetSheet();
            var allviews = sheet1.GetAllViews();
            foreach(var item in allviews)
            {
                ViewBase view = item as ViewBase;
                LevelMark levelMark = new LevelMark(view, new Point(1000, 2000, 0), new LeaderLinePlacing(new Point(0000, 1000, 0)));
                levelMark.Attributes.Font.Height = 4.0;
                bool res = levelMark.Insert();
            }
        }
        static void Main(string[] args)
        {
            LevelMarkCreate();
            //LevelMarkCreateAsACopy();
            //LevelMarkModify();
            DrawingHandler myDrawingHandler = new DrawingHandler();
            myDrawingHandler.GetActiveDrawing().CommitChanges();
        }
    }
}
See Also