pub struct Slab {
pub id: SlabId,
pub shape: SlabShape,
pub plate: SlabPlate,
}Expand description
床板。大梁または小梁で囲まれた版、または主架構に取り付く版 (片持ち・バルコニー・出隅)ごとに 1 つ。
Fields§
§id: SlabId床板 ID(Model::slabs の配列インデックスと一致すること)。
shape: SlabShape§plate: SlabPlateImplementations§
Source§impl Slab
impl Slab
Sourcepub fn is_attached(&self) -> bool
pub fn is_attached(&self) -> bool
取り付く床板か。
Sourcepub fn boundary_nodes(&self) -> Option<&[NodeId]>
pub fn boundary_nodes(&self) -> Option<&[NodeId]>
境界の節点列。大梁または小梁で囲まれた床板のみ(取り付く床板は
自由端に節点を持たないため None)。
Sourcepub fn boundary_coords(&self, model: &Model) -> Option<Vec<[f64; 3]>>
pub fn boundary_coords(&self, model: &Model) -> Option<Vec<[f64; 3]>>
境界多角形の座標列 [mm]。取り付く床板は取付き先と張り出し量から算出する。
節点が引けない(陳腐化した参照)場合は None。
Sourcepub fn boundary_coords_with(
&self,
coord_of: impl Fn(NodeId) -> Option<[f64; 3]>,
) -> Option<Vec<[f64; 3]>>
pub fn boundary_coords_with( &self, coord_of: impl Fn(NodeId) -> Option<[f64; 3]>, ) -> Option<Vec<[f64; 3]>>
境界多角形の座標列 [mm] を、節点座標の引き方を差し替えて求める。
Slab::boundary_coords はモデルの節点座標をそのまま使うが、変形図・
モード形・時刻歴は変形後の節点座標で描く必要がある。形状の組み立て方
(取付き線の内挿・左向き法線への張り出し)は同じなので、座標の引き方だけを
差し替えられるようにして実装を 1 つに保つ。
Sourcepub fn edge_nodes(&self, k: usize) -> Option<[NodeId; 2]>
pub fn edge_nodes(&self, k: usize) -> Option<[NodeId; 2]>
境界の辺 k の両端節点。荷重分配の結果(LoadTarget::Edge)を主架構の梁へ
結びつけるために使う。
大梁または小梁で囲まれた床板は boundary[k]→boundary[k+1]、取り付く床板
(線)は辺 0 が取付き線そのもの(それ以外の辺は自由端なので None)。
取り付く床板(点)は辺を持たない。
Sourcepub fn reference_node(&self) -> Option<NodeId>
pub fn reference_node(&self) -> Option<NodeId>
床板を代表する節点。大梁または小梁で囲まれた床板は境界の先頭、 取り付く床板は取付き先の節点。
Sourcepub fn method(&self) -> DistributionMethod
pub fn method(&self) -> DistributionMethod
分配方法。
Sourcepub fn live_intensity(&self, purpose: LoadPurpose) -> f64
pub fn live_intensity(&self, purpose: LoadPurpose) -> f64
用途別の積載荷重(LL)の面荷重強度 [N/mm²]。用途未設定は 0。
Sourcepub fn attached_design_span(&self) -> Option<f64>
pub fn attached_design_span(&self) -> Option<f64>
取り付く床板の設計スパン [mm](張り出し量の絶対値の大きい方)。
大梁または小梁で囲まれた床板、値が非有限、または 0 以下のときは None。
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Slab
impl<'de> Deserialize<'de> for Slab
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Slab
Auto Trait Implementations§
impl Freeze for Slab
impl RefUnwindSafe for Slab
impl Send for Slab
impl Sync for Slab
impl Unpin for Slab
impl UnsafeUnpin for Slab
impl UnwindSafe for Slab
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more