Skip to content

Commit

Permalink
Merge branch 'master' into 1570617-Change-KOQ-Of-PileWeight-To-Mass
Browse files Browse the repository at this point in the history
  • Loading branch information
Bordoloi123 authored Jan 20, 2025
2 parents 98c65d8 + e0c94ca commit 3413463
Show file tree
Hide file tree
Showing 10 changed files with 205 additions and 40 deletions.
5 changes: 5 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
{
"[xml]": {
"editor.tabSize": 4,
"editor.insertSpaces": true,
"editor.detectIndentation": false
},
"cSpell.words": [
"ASHRAE",
"CMAP",
Expand Down
30 changes: 30 additions & 0 deletions Domains/0-Core/BisCore.ecschema.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1034,6 +1034,19 @@
</ECProperty>
<ECProperty propertyName="Format" typeName="string" displayLabel="Format" description="The format of the external repository."/>
</ECEntityClass>
<ECEntityClass typeName="RepositoryInfoAspect" displayLabel="Repository Info Aspect" modifier="None" description="A bis:ElementUniqueAspect that identifies a bis:Element as one of the roots of a *channel*, specified by its *channel-key*, which is a subset of the overall model-hierarchy and associated data, that is independently maintained.">
<BaseClass>ElementUniqueAspect</BaseClass>
<ECProperty propertyName="OriginatingSystem" typeName="string" displayLabel="Originating System" description="Name and optionally version of the software application or tool that created data in the External DataSource referenced through the owning RepositoryLink"/>
</ECEntityClass>
<ECRelationshipClass typeName="RepositoryLinkOwnsInfoAspect" strength="embedding" modifier="None">
<BaseClass>ElementOwnsUniqueAspect</BaseClass>
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
<Class class="RepositoryLink"/>
</Source>
<Target multiplicity="(0..1)" roleLabel="is owned by" polymorphic="true">
<Class class="RepositoryInfoAspect"/>
</Target>
</ECRelationshipClass>

<ECEntityClass typeName="EmbeddedFileLink" displayLabel="Embedded File Link" description="A bis:EmbeddedFileLink is a bis:LinkElement that links to a file embedded within the iModel.">
<BaseClass>LinkElement</BaseClass>
Expand Down Expand Up @@ -1510,6 +1523,9 @@
<BaseClass>ElementUniqueAspect</BaseClass>
<ECCustomAttributes>
<ClassHasHandler xmlns="BisCore.01.00.00"/>
<Deprecated xmlns="CoreCustomAttributes.01.00.03">
<Description>Settings are now stored in the `JsonProperties` attribute of TextAnnotation2d and TextAnnotation3d classes.</Description>
</Deprecated>
</ECCustomAttributes>
<ECProperty propertyName="TextAnnotation" typeName="binary" displayLabel="Text Annotation" description="Text in Annotations.fb.h flat buffer format">
<ECCustomAttributes>
Expand All @@ -1526,6 +1542,11 @@
</ECEntityClass>
<ECRelationshipClass typeName="TextAnnotation2dOwnsTextAnnotationData" strength="embedding" modifier="None">
<BaseClass>ElementOwnsUniqueAspect</BaseClass>
<ECCustomAttributes>
<Deprecated xmlns="CoreCustomAttributes.01.00.03">
<Description>See deprecation description for TextAnnotationData class.</Description>
</Deprecated>
</ECCustomAttributes>
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
<Class class="TextAnnotation2d"/>
</Source>
Expand All @@ -1542,6 +1563,11 @@
</ECEntityClass>
<ECRelationshipClass typeName="TextAnnotation3dOwnsTextAnnotationData" strength="embedding" modifier="None">
<BaseClass>ElementOwnsUniqueAspect</BaseClass>
<ECCustomAttributes>
<Deprecated xmlns="CoreCustomAttributes.01.00.03">
<Description>See deprecation description for TextAnnotationData class.</Description>
</Deprecated>
</ECCustomAttributes>
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
<Class class="TextAnnotation3d"/>
</Source>
Expand Down Expand Up @@ -1860,6 +1886,7 @@
<ECEntityClass typeName="ChannelRootAspect" displayLabel="Channel Root Aspect" modifier="Sealed" description="A bis:ElementUniqueAspect that identifies a bis:Element as one of the roots of a *channel*, specified by its *channel-key*, which is a subset of the overall model-hierarchy and associated data, that is independently maintained.">
<BaseClass>ElementUniqueAspect</BaseClass>
<ECProperty propertyName="Owner" typeName="string" description="Channel-key of the channel"/>
<ECProperty propertyName="Version" typeName="string" description="Semantic version of the data-organization and default content in the channel, set by the Owner that last edited it."/>
</ECEntityClass>
<ECRelationshipClass typeName="ElementOwnsChannelRootAspect" strength="embedding" modifier="None">
<BaseClass>ElementOwnsUniqueAspect</BaseClass>
Expand Down Expand Up @@ -2155,6 +2182,9 @@
<BaseClass>DefinitionElement</BaseClass>
<ECCustomAttributes>
<ClassHasHandler xmlns="BisCore.01.00.00"/>
<Deprecated xmlns="CoreCustomAttributes.01.00.03">
<Description>Not modeled with BIS anymore.</Description>
</Deprecated>
</ECCustomAttributes>
<ECProperty propertyName="Description" typeName="string" description="Description of the style">
<ECCustomAttributes>
Expand Down
7 changes: 6 additions & 1 deletion Domains/0-Core/BisCore.remarks.md
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,12 @@ Applications create channels to define portions of the model-hierarchy that they

Each Element (typically a `Subject` or `InformationPartitionElement`) that owns a `ChannelRootAspect` defines a root of the model-hierarchy that is included in a particular *channel*. It recursively descends down through `ElementOwnsChildElements` and `ModelModelsElement` relationships to include all of the child elements and sub-models into the specified *channel*. A *channel* is conceptually identified by its _Channel Key_ value of the `Owner` property of a `ChannelRootAspect`.

There may be more than one root `Subject`s or `InformationPartitionElement`s in a model-hierarchy that are included in the same *channel*. In that case, each `Subject` or `InformationPartitionElement` instance specifies the same _Channel Key_ value in their `ChannelRootAspect`.
Applications can optionally use the `ChannelRootAspect.Version` property in order to assign a _semantic version_ number to the data-organization in a *channel*. _Semantic versioning_ aims at efficiently advertising read and write backwards-compatibility with respect to previous versions of the owning Application of a *channel*.

_Semantic versioning_ of *channels* follows the "[read-version].[write-version].[minor-version]" format.
- [read-version] is incremented when the data-organization of a *channel* is changed in ways that older versions of an Application cannot safely understand it for reading purposes.
- [write-version] is incremented when the data-organization of a *channel* is changed in ways that it is not safe for older versions of an Application to add, modify or delete data in it.
- [minor-version] is incremented when the data-organization of a *channel* is changed in ways that older versions of an Application can still safely read it or write to it.

Note that *Channels* do not nest. That is, once a `Subject` or `InformationPartitionElement` instance defines a root to be included in a particular *channel*, no descendant Element of such root in the subject-hierarchy can be used to define a root for a different *channel*.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,11 @@ A `HorizontalAlignment` instance shall be contained in a *Plan-projection* `Spat

A `HorizontalAlignment` typically has the same `CodeValue` and Category as its associated `Alignment`.

A `HorizontalAlignment` stores its visual geometry separately from geometry used for linear-referencing and design purposes, although the two could be identical. The former shall be stored in its `GeometryStream` whereas the latter shall be stored in the `HorizontalGeometry` property, encoded as a [Path](https://www.itwinjs.org/reference/geometry-core/curve/path/). Each curve primitive in such *Path* describes a segment along the `HorizontalAlignment` as follows:
A `HorizontalAlignment` stores its visual geometry separately from geometry used for linear-referencing and design purposes, although the two could be identical. The former shall be stored in its `GeometryStream` whereas the latter shall be stored in the `HorizontalGeometry` property, encoded as a [Path](https://www.itwinjs.org/reference/core-geometry/curve/path/). Each curve primitive in such *Path* describes a segment along the `HorizontalAlignment` as follows:

- Linear segments shall be encoded as [LineSegment3d](https://www.itwinjs.org/reference/geometry-core/curve/linesegment3d/)s.
- Circular arc segments shall be encoded as [Arc3d](https://www.itwinjs.org/reference/geometry-core/curve/arc3d/)s.
- Transition segments (spirals) shall be encoded as [TransitionSpiral3d](https://www.itwinjs.org/reference/geometry-core/curve/transitionspiral3d/)s.
- Linear segments shall be encoded as [LineSegment3d](https://www.itwinjs.org/reference/core-geometry/curve/linesegment3d/)s.
- Circular arc segments shall be encoded as [Arc3d](https://www.itwinjs.org/reference/core-geometry/curve/arc3d/)s.
- Transition segments (spirals) shall be encoded as [TransitionSpiral3d](https://www.itwinjs.org/reference/core-geometry/curve/transitionspiral3d/)s.

The Z-coordinate of all of these primitives shall be zero.

Expand Down Expand Up @@ -78,11 +78,11 @@ A `VerticalAlignment` instance shall be contained in a `VerticalAlignmentModel`

A `VerticalAlignment` by default use the Domain-ranked `Vertical Alignment` Category.

A `VerticalAlignment` stores its visual geometry separately from geometry used for linear-referencing and design purposes, although the two could be identical. The former shall be stored in its `GeometryStream` whereas the latter shall be stored in the `VerticalGeometry` property, encoded as a [Path](https://www.itwinjs.org/reference/geometry-core/curve/path/). Each curve primitive in such *Path* describes a segment along the `VerticalAlignment` as follows:
A `VerticalAlignment` stores its visual geometry separately from geometry used for linear-referencing and design purposes, although the two could be identical. The former shall be stored in its `GeometryStream` whereas the latter shall be stored in the `VerticalGeometry` property, encoded as a [Path](https://www.itwinjs.org/reference/core-geometry/curve/path/). Each curve primitive in such *Path* describes a segment along the `VerticalAlignment` as follows:

- Linear segments shall be encoded as [LineSegment3d](https://www.itwinjs.org/reference/geometry-core/curve/linesegment3d/)s.
- Circular arc segments shall be encoded as [Arc3d](https://www.itwinjs.org/reference/geometry-core/curve/arc3d/)s.
- Transition segments (parabolic) shall be encoded as [BSplineCurve3d](https://www.itwinjs.org/reference/geometry-core/bspline/bsplinecurve3d/)s.
- Linear segments shall be encoded as [LineSegment3d](https://www.itwinjs.org/reference/core-geometry/curve/linesegment3d/)s.
- Circular arc segments shall be encoded as [Arc3d](https://www.itwinjs.org/reference/core-geometry/curve/arc3d/)s.
- Transition segments (parabolic) shall be encoded as [BSplineCurve3d](https://www.itwinjs.org/reference/core-geometry/bspline/bsplinecurve3d/)s.

The X-coordinate of all of these primitives shall indicate *distance along* measurements in terms of the corresponding `HorizontalAlignment`. That is, an X-coordinate = 0.0 corresponds to the start location of its `HorizontalAlignment`. Y-coordinates shall indicate *elevation* at such location. Z-coordinate of all of these primitives shall be zero.

Expand All @@ -98,4 +98,4 @@ Individual segments along the `VerticalAlignment` encoded as a *Path* are equiva

`AlignmentStation`s are linearly-located elements along an `Alignment`. They shall carry the *distance along* measurement in a `LinearlyReferencedAtLocation` aspect whereas the mapped *station value* shall be stored in their `Station` property. `Alignment`s shall define its initial *station value* in their `StartStation` property.

Equivalent to [IfcReferent](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcReferent.htm) with a non-zero `StartDistance` attribute and relative measurements used by linear-locations referencing it.
Equivalent to [IfcReferent](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcReferent.htm) with a non-zero `StartDistance` attribute and relative measurements used by linear-locations referencing it.
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,16 @@
<KindOfQuantity typeName="ELEVATION" displayLabel="Road &amp; Rail Elevation" persistenceUnit="u:M" presentationUnits="f:DefaultRealU(2)[u:M];f:DefaultRealU(2)[u:FT]" relativeError="0.0001"/>
<KindOfQuantity typeName="FLOW" displayLabel="Road &amp; Rail Flow" persistenceUnit="u:CUB_M_PER_SEC" presentationUnits="f:DefaultRealU(2)[u:CUB_M_PER_SEC];f:DefaultRealU(2)[u:CUB_FT_PER_SEC]" relativeError="0.0001"/>
<KindOfQuantity typeName="LENGTH" displayLabel="Road &amp; Rail Length" persistenceUnit="u:M" presentationUnits="f:DefaultRealU(2)[u:M];f:DefaultRealU(2)[u:FT];f:DefaultRealU(2)[u:US_SURVEY_FT]" relativeError="0.0001"/>
<KindOfQuantity typeName="LENGTH_SHORT" displayLabel="Road &amp; Rail Short Length" persistenceUnit="u:M" presentationUnits="f:DefaultRealU(3)[u:M];f:AmerFI" relativeError="0.0001"/>
<KindOfQuantity typeName="LENGTH_SHORT" displayLabel="Road &amp; Rail Short Length" persistenceUnit="u:M" presentationUnits="f:DefaultRealU(1)[u:MM];f:DefaultRealU(1)[u:IN]" relativeError="0.0001"/>
<KindOfQuantity typeName="SLOPE" displayLabel="Road &amp; Rail Slope" persistenceUnit="u:M_PER_M" presentationUnits="f:DefaultRealU(2)[u:PERCENT_SLOPE]" relativeError="0.0001" />
<KindOfQuantity typeName="STATION" displayLabel="Road &amp; Rail Station" persistenceUnit="u:M" presentationUnits="f:StationZ_1000_3[u:M];f:StationZ_100_2[u:FT];f:StationZ_100_2[u:US_SURVEY_FT];f:DefaultRealU(2)[u:M];f:DefaultRealU(2)[u:FT];f:DefaultRealU(2)[u:US_SURVEY_FT]" relativeError="0.0001"/>
<KindOfQuantity typeName="VELOCITY" displayLabel="Road &amp; Rail Velocity" persistenceUnit="u:M_PER_SEC" presentationUnits="f:DefaultRealU(2)[u:KM_PER_HR];f:DefaultRealU(2)[u:MPH]" relativeError="0.0001"/>
<KindOfQuantity typeName="VOLUME" displayLabel="Road &amp; Rail Volume" persistenceUnit="u:CUB_M" presentationUnits="f:DefaultRealU(2)[u:CUB_M];f:DefaultRealU(2)[u:CUB_FT]" relativeError="0.0001"/>
<KindOfQuantity typeName="PERCENTAGE" displayLabel="Road &amp; Rail Percentage" persistenceUnit="u:DECIMAL_PERCENT" presentationUnits="f:DefaultRealU(2)[u:PERCENT];f:DefaultRealU(4)[u:DECIMAL_PERCENT]" relativeError="0.0001"/>
</ECSchema>
<KindOfQuantity typeName="SIDE_SLOPE" displayLabel="Road &amp; Rail Side Slope" persistenceUnit="u:M_HORIZONTAL_PER_M_VERTICAL" presentationUnits="f:DefaultRealU(1)[u:HORIZONTAL_PER_VERTICAL]" relativeError="0.0001"/>
<KindOfQuantity typeName="INTENSITY_INFILTRATION" displayLabel="Road &amp; Rail Intensity/Infiltration" persistenceUnit="u:M_PER_SEC" presentationUnits="f:DefaultRealU(2)[u:MM_PER_HR];f:DefaultRealU(2)[u:IN_PER_HR]" relativeError="0.0001"/>
<KindOfQuantity typeName="RATIONAL_COEFFICIENT" displayLabel="Road &amp; Rail Rational Coefficient" persistenceUnit="u:COEFFICIENT" presentationUnits="f:DefaultRealU(2)[u:COEFFICIENT]" relativeError="0.0001"/>
<KindOfQuantity typeName="MANNINGS_N" displayLabel="Road &amp; Rail Manning's n" persistenceUnit="u:COEFFICIENT" presentationUnits="f:DefaultRealU(3)[u:COEFFICIENT]" relativeError="0.0001"/>
<KindOfQuantity typeName="HAZEN_WILLIAMS_C" displayLabel="Road &amp; Rail Hazen-William's C" persistenceUnit="u:COEFFICIENT" presentationUnits="f:DefaultRealU(0)[u:COEFFICIENT]" relativeError="0.0001"/>

</ECSchema>
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<ECSchemaReference name="BisCore" version="01.00.10" alias="bis" />
<ECSchemaReference name="Analytical" version="01.00.01" alias="anlyt" />
<ECSchemaReference name="AecUnits" version="01.00.03" alias="AECU"/>
<ECSchemaReference name="RoadRailUnits" version="01.00.02" alias="rru"/>
<ECSchemaReference name="RoadRailUnits" version="01.00.03" alias="rru"/>
<ECSchemaReference name="PipeworkPhysical" version="01.00.01" alias="pipphys"/>

<ECCustomAttributes>
Expand Down Expand Up @@ -39,9 +39,9 @@

<ECEntityClass typeName="HydraulicMaterialAspect" modifier="Sealed" displayLabel="Hydraulic Material Aspect">
<BaseClass >bis:ElementUniqueAspect</BaseClass>
<ECProperty propertyName="ManningsN" typeName="double" displayLabel="Manning's n"/>
<ECProperty propertyName="KuttersN" typeName="double" displayLabel="Kutter's n"/>
<ECProperty propertyName="HazenWilliamsC" typeName="double" displayLabel="Hazen-William's C"/>
<ECProperty propertyName="ManningsN" typeName="double" kindOfQuantity="rru:MANNINGS_N" displayLabel="Manning's n"/>
<ECProperty propertyName="KuttersN" typeName="double" kindOfQuantity="rru:MANNINGS_N" displayLabel="Kutter's n"/>
<ECProperty propertyName="HazenWilliamsC" typeName="double" kindOfQuantity="rru:HAZEN_WILLIAMS_C" displayLabel="Hazen-William's C"/>
<ECProperty propertyName="DarcyWeisbachRoughnessHeight" typeName="double" kindOfQuantity="rru:LENGTH_SHORT" displayLabel="Darcy-Weisbach Roughness Height"/>
</ECEntityClass>

Expand Down
Loading

0 comments on commit 3413463

Please sign in to comment.