Skip to main content

RegionAnchor

Enum RegionAnchor 

Source
pub enum RegionAnchor {
    Line {
        nodes: [NodeId; 2],
        span: [f64; 2],
        transfer: LoadTransfer,
    },
    Point(NodeId),
    FloorRegion {
        nodes: [NodeId; 2],
    },
}
Expand description

取り付く床板の取付き先。

節点で指すのは、節点を動かしても追随し、取付き先の大梁を分割しても外れないためである (区間は節点対の間の相対位置なので、間に節点が増えても変わらない)。

Variants§

§

Line

線に取り付く(片持ちスラブ・バルコニー)。

nodes は取付き線の両端、span はその線上の無次元区間 [t_i, t_j](0.0〜1.0、 全長は [0.0, 1.0])。梁の一部だけに載る場合に用いる。

張り出し量 extent[d_i, d_j](区間の始端側・終端側)で、 符号は取付き線 nodes[0]nodes[1] の左側を正とする

荷重の出口(transfer)を選べるのはこの形だけである。点に取り付く床板は その節点への集中しかありえないため、値を持たせると無意味な組み合わせを 表現できてしまう。

Fields

§nodes: [NodeId; 2]
§span: [f64; 2]
§transfer: LoadTransfer
§

Point(NodeId)

点(柱)に取り付く(出隅の片持ちスラブ)。荷重はその節点へ集中する。

張り出し量 extent は全体座標の [X 方向, Y 方向] で、符号が向きを表す。

§

FloorRegion

床領域に取り付く(自立壁。床の上に立つ間仕切り等)。荷重は壁が載っている 床領域へ渡し、等価な面荷重へならして分配する(D17)。

nodes は壁の始点・終点(節点参照。Line と同じ理由で節点移動に追随させる)。 面積(=自重の計算)にはこの2点間の距離を使う。

荷重を渡す床領域は保存せず、壁の位置から都度求めるModel::self_standing_wall_coverage)。床領域は主架構から作り直される 派生的な入力(D10)で、FloorRegionId は作り直しのたびに面走査順で振り直される。 ID を保存すると、モデルの位相が変わった瞬間に別の床領域を指すようになり、 自立壁の自重が黙って別の階へならされる。保存しなければこの陳腐化は起こりえない。

壁が複数の床領域にまたがる場合は、床領域の境界で内部的に分割して、 それぞれの床領域へ ∫|立ち上がり高さ| の比で重量を配る。矩形なら長さ比と一致する。 両端で高さが符号反転するときは高さ 0 で折る(端点絶対値の台形ではない)。 どの床領域にも載らない部分が残る壁は、荷重の行き先がないモデルの不備として 解析前チェックが止める。

面荷重へならす時点で、壁が床領域内のどこにあるかという位置情報は失われる (厳密に扱いたい場合は壁の直下に小梁を入れて主架構へ取り付ける運用とする)。 失われるのは位置であって長さではない。

床板(super::Slab)の取付き先としては使わない。床板が「床領域に取り付く」 構図は D13 の 2 種別(囲まれた領域・取り付き領域)のどちらにも該当せず生じない (床は主架構またはほかの床板の辺に取り付くのであって、床領域そのものには 取り付かない)。壁側(super::WallPlateAttached 形)専用のアンカーである。

Fields

§nodes: [NodeId; 2]

Trait Implementations§

Source§

impl Clone for RegionAnchor

Source§

fn clone(&self) -> RegionAnchor

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for RegionAnchor

Source§

impl Debug for RegionAnchor

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for RegionAnchor

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for RegionAnchor

Source§

fn eq(&self, other: &RegionAnchor) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for RegionAnchor

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for RegionAnchor

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.