Class WallByProfile
A wall drawn using the elevation profile
Inherited Members
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()