Show / Hide Table of Contents

    Class WallByProfile

    A wall drawn using the elevation profile

    Inheritance
    System.Object
    Element
    GeometricElement
    Wall
    WallByProfile
    Implements
    System.ComponentModel.INotifyPropertyChanged
    IHasOpenings
    Inherited Members
    Wall.Height
    Wall.Profile
    Wall.Openings
    GeometricElement.Bounds
    GeometricElement.Transform
    GeometricElement.Material
    GeometricElement.Representation
    GeometricElement.IsElementDefinition
    GeometricElement.ModifyVertexAttributes
    GeometricElement.UpdateBoundsAndComputeSolid(Boolean)
    GeometricElement.CreateInstance(Transform, String)
    GeometricElement.ToMesh(Boolean)
    GeometricElement.HasGeometry()
    GeometricElement.Intersects(Plane, Dictionary<Guid, List<Polygon>>, Dictionary<Guid, List<Polygon>>, Dictionary<Guid, List<Line>>)
    GeometricElement.TryToGraphicsBuffers(List<GraphicsBuffers>, String, Nullable<MeshPrimitive.ModeEnum>)
    Element.Id
    Element.Name
    Element.AdditionalProperties
    Element.PropertyChanged
    Element.RaisePropertyChanged(String)
    Element.SetMapping(String, MappingBase)
    Element.GetMapping(String)
    Element.GetMapping<T>(String)
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    Namespace: Elements
    Assembly: Hypar.Elements.dll
    Syntax
    [JsonConverter(typeof(JsonInheritanceConverter), new object[]{"discriminator"})]
    public class WallByProfile : Wall, INotifyPropertyChanged, IHasOpenings

    Constructors

    WallByProfile(Polygon, Profile, Double, Line, Transform, Material, List<Opening>, Representation, Boolean, Guid, String)

    Construct a wall by profile.

    Declaration
    [JsonConstructor]
    [Obsolete("Do not use.  This constructor is only preserved to maintain backwards compatibility upon serialization/deserialization.")]
    public WallByProfile(Polygon perimeter, Profile profile, double thickness, Line centerline, Transform transform, Material material, List<Opening> openings, Representation representation, bool isElementDefinition, Guid id, string name)
    Parameters
    Type Name Description
    Polygon perimeter

    The perimeter of the wall elevation.

    Profile profile

    This value should be left null.

    System.Double thickness

    The thickness of the wall.

    Line centerline

    The centerline of the wall.

    Transform transform

    The transform of the wall.

    Material material

    The material of the wall.

    System.Collections.Generic.List<Opening> openings

    The openings of the wall.

    Representation representation

    The representation of the wall.

    System.Boolean isElementDefinition

    Is the wall an element definition?

    System.Guid id

    The id of the wall.

    System.String name

    The name of the wall.

    WallByProfile(Polygon, Double, Line, Transform, Material, Representation, Boolean, String)

    Construct a wall by profile.

    Declaration
    public WallByProfile(Polygon perimeter, double thickness, Line centerline, Transform transform = null, Material material = null, Representation representation = null, bool isElementDefinition = false, string name = "Wall by Profile")
    Parameters
    Type Name Description
    Polygon perimeter

    The perimeter of the wall elevation.

    System.Double thickness

    The thickness of the wall.

    Line centerline

    The centerline of the wall.

    Transform transform

    The transform of the wall.

    Material material

    The material of the wall.

    Representation representation

    The representation of the wall.

    System.Boolean isElementDefinition

    Is the wall an element definition?

    System.String name

    The name of the wall.

    WallByProfile(Profile, Double, Line, Transform, Material, Representation, Boolean)

    Create a Wall from a Profile and thickness. If centerline is not included it will be computed from the Profile. The Profile will be projected to the centerline Plane, and used to find Openings of the Wall.

    Declaration
    public WallByProfile(Profile profile, double thickness, Line centerline = null, Transform transform = null, Material material = null, Representation representation = null, bool isElementDefinition = false)
    Parameters
    Type Name Description
    Profile profile
    System.Double thickness
    Line centerline
    Transform transform
    Material material
    Representation representation
    System.Boolean isElementDefinition

    Properties

    Centerline

    The Centerline of the wall

    Declaration
    [JsonProperty("Centerline", Required = Required.Default, NullValueHandling = NullValueHandling.Ignore)]
    public Line Centerline { get; set; }
    Property Value
    Type Description
    Line

    Perimeter

    The perimeter of the Wall's elevation. It is assumed to be in the same Plane as the Centerline, and will often be projected to that Plane during internal operations.

    Declaration
    [JsonProperty("Perimeter", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)]
    public Polygon Perimeter { get; set; }
    Property Value
    Type Description
    Polygon

    Thickness

    The overall thickness of the Wall

    Declaration
    [JsonProperty("Thickness", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)]
    public double Thickness { get; set; }
    Property Value
    Type Description
    System.Double

    Methods

    AddOpening(Polygon, Double, Double)

    Add an Opening to the Wall.

    Declaration
    public void AddOpening(Polygon perimeter, double depthFront = 1, double depthBack = 1)
    Parameters
    Type Name Description
    Polygon perimeter
    System.Double depthFront
    System.Double depthBack

    GetHeight()

    The computed height of the Wall.

    Declaration
    public double GetHeight()
    Returns
    Type Description
    System.Double

    GetProfile()

    The Profile of the Wall computed from its Perimeter and the Openings.

    Declaration
    public Profile GetProfile()
    Returns
    Type Description
    Profile

    UpdateRepresentations()

    Update the geometric representation of this Wall.

    Declaration
    public override void UpdateRepresentations()
    Overrides
    Wall.UpdateRepresentations()

    Implements

    System.ComponentModel.INotifyPropertyChanged
    IHasOpenings

    Extension Methods

    ElementProxyExtensions.Proxy<T>(T, String)
    Identity.AddOverrideIdentity(Element, IOverride)
    Identity.AddOverrideIdentity(Element, String, String, Object)
    Identity.AddOverrideValue(Element, String, Object)
    Identity.OverrideIds<T>(Element, String)