pub struct WellRead {
pub object: ObjectId,
pub kind: WellKind,
pub wellbore: Option<String>,
pub head: [f64; 3],
pub path: Vec<[f64; 3]>,
pub md: Option<Vec<f64>>,
pub intervals: Vec<Interval>,
pub strata: Option<String>,
pub borrowed: bool,
pub head_only: bool,
}Expand description
One well, read: its head and its path in the scene’s system, its strata.
Fields§
§object: ObjectIdThe object.
kind: WellKindFrame or trajectory.
wellbore: Option<String>The wellbore it describes - what makes a frame and its trajectory one
line: the uuid of the wellbore feature, or of the trajectory a
frame hangs on when no feature is reachable. None: it stands alone.
head: [f64; 3]The head, [x, y, z] - the datum, never the first node.
path: Vec<[f64; 3]>The nodes drawn, [x, y, z].
md: Option<Vec<f64>>The MD of each node, when known (same length as path).
intervals: Vec<Interval>The strata intervals along the MD.
strata: Option<String>Why there are no intervals, when there are none and some were wanted.
borrowed: boolThe intervals are borrowed from other frames of the wellbore, looked
up at this one’s MDs - not stated by this object. What makes the frame
that states them keep the line (assemble).
head_only: boolTold by its head alone - not read: no node, no interval. A well far
from every section (read::contribution_bounded); assemble never folds
it into a wellbore’s line (nothing to rank it by) and refuses it on its
own row, from its head.