Skip to main content

AgsiModelBoundary

Struct AgsiModelBoundary 

Source
pub struct AgsiModelBoundary {
    pub agsi_geometry_boundary_xy: Option<AgsiGeometryFromFile>,
    pub agsi_geometry_surface_bottom: Option<AgsiGeometryFromFile>,
    pub agsi_geometry_surface_top: Option<AgsiGeometryFromFile>,
    pub bottom_elevation: Option<f64>,
    pub boundary_id: Option<String>,
    pub description: Option<String>,
    pub max_x: Option<f64>,
    pub max_y: Option<f64>,
    pub min_x: Option<f64>,
    pub min_y: Option<f64>,
    pub remarks: Option<String>,
    pub top_elevation: Option<f64>,
}
Expand description

An agsiModelBoundary object defines the model boundary, i.e. the maximum extent of the model. Any elements or parts of elements lying outside the boundary are deemed to not be part of the model. Only one boundary per agsiModel is permitted. Only plan boundaries with vertical sides are permitted, defined by either limiting coordinates, or a bounding closed polygon. The top and base may be either a flat plane at a defined elevation, or a surface. Top boundary may not be required, depending on nature of model and/or software/application used (to be confirmed in specification).

JSON schema
{
 "description": "An agsiModelBoundary object defines the model boundary, i.e. the maximum extent of the model. Any elements or parts of elements lying outside the boundary are deemed to not be part of the model. Only one boundary per agsiModel is permitted. Only plan boundaries with vertical sides are permitted, defined by either limiting coordinates, or a bounding closed polygon. The top and base may be either a flat plane at a defined elevation, or a surface. Top boundary may not be required, depending on nature of model and/or software/application used (to be confirmed in specification). ",
 "type": "object",
 "properties": {
   "agsiGeometryBoundaryXY": {
     "description": "Embedded agsiGeometryFromFile object that provides the geometry of the closed polygon defining the plan extent of model, as an alternative to the box boundary. Use with caution as this may not be supported by all software/applications. Confirm use in specification.",
     "type": "object",
     "$ref": "#/$defs/agsiGeometryFromFile"
   },
   "agsiGeometrySurfaceBottom": {
     "description": "Embedded agsiGeometryFromFile object that defines the base of the model, as an alternative to the box boundary. Use with caution as this may not be supported by all software/applications. Confirm use in specification.",
     "type": "object",
     "$ref": "#/$defs/agsiGeometryFromFile"
   },
   "agsiGeometrySurfaceTop": {
     "description": "Embedded agsiGeometryFromFile object that defines the top of the model, as an alternative to the box boundary. Use with caution as this may not be supported by all software/applications. May not be required for some software/applications. Confirm use in specification.",
     "type": "object",
     "$ref": "#/$defs/agsiGeometryFromFile"
   },
   "bottomElevation": {
     "description": "Elevation (Z) of bottom plane of model for box boundary.",
     "type": "number",
     "example": -40
   },
   "boundaryID": {
     "description": "Identifier for the model boundary. May be local to this file or a UUID as required/specified. This is optional and is not referenced anywhere else in the schema, but it may be beneficial to include this to help with data control and integrity, and some software/applications may require it.  If used, identifiers for boundaryID should be unique within the AGSi file. ",
     "type": "string",
     "example": "BoundarySitewide"
   },
   "description": {
     "description": "Short description.",
     "type": "string",
     "example": "Boundary for Geological Model: sitewide"
   },
   "maxX": {
     "description": "Maximum X for box boundary.",
     "type": "number",
     "example": 35000
   },
   "maxY": {
     "description": "Maximum Y for box boundary.",
     "type": "number",
     "example": 15000
   },
   "minX": {
     "description": "Minimum X for box boundary.",
     "type": "number",
     "example": 20000
   },
   "minY": {
     "description": "Minimum Y for box boundary.",
     "type": "number",
     "example": 10000
   },
   "remarks": {
     "description": "Additional remarks, if required.",
     "type": "string",
     "example": "Some additional remarks"
   },
   "topElevation": {
     "description": "Elevation (Z) of top plane of model for box boundary.",
     "type": "number",
     "example": 40
   }
 },
 "additionalProperties": false
}

Fields§

§agsi_geometry_boundary_xy: Option<AgsiGeometryFromFile>

Embedded agsiGeometryFromFile object that provides the geometry of the closed polygon defining the plan extent of model, as an alternative to the box boundary. Use with caution as this may not be supported by all software/applications. Confirm use in specification.

§agsi_geometry_surface_bottom: Option<AgsiGeometryFromFile>

Embedded agsiGeometryFromFile object that defines the base of the model, as an alternative to the box boundary. Use with caution as this may not be supported by all software/applications. Confirm use in specification.

§agsi_geometry_surface_top: Option<AgsiGeometryFromFile>

Embedded agsiGeometryFromFile object that defines the top of the model, as an alternative to the box boundary. Use with caution as this may not be supported by all software/applications. May not be required for some software/applications. Confirm use in specification.

§bottom_elevation: Option<f64>§boundary_id: Option<String>

Identifier for the model boundary. May be local to this file or a UUID as required/specified. This is optional and is not referenced anywhere else in the schema, but it may be beneficial to include this to help with data control and integrity, and some software/applications may require it. If used, identifiers for boundaryID should be unique within the AGSi file.

§description: Option<String>

Short description.

§max_x: Option<f64>§max_y: Option<f64>§min_x: Option<f64>§min_y: Option<f64>§remarks: Option<String>

Additional remarks, if required.

§top_elevation: Option<f64>

Implementations§

Trait Implementations§

Source§

impl Clone for AgsiModelBoundary

Source§

fn clone(&self) -> AgsiModelBoundary

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for AgsiModelBoundary

Source§

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

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

impl Default for AgsiModelBoundary

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for AgsiModelBoundary

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 From<&AgsiModelBoundary> for AgsiModelBoundary

Source§

fn from(value: &AgsiModelBoundary) -> Self

Converts to this type from the input type.
Source§

impl From<AgsiModelBoundary> for AgsiModelBoundary

Source§

fn from(value: AgsiModelBoundary) -> Self

Converts to this type from the input type.
Source§

impl Serialize for AgsiModelBoundary

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 TryFrom<AgsiModelBoundary> for AgsiModelBoundary

Source§

type Error = ConversionError

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

fn try_from(value: AgsiModelBoundary) -> Result<Self, ConversionError>

Performs the conversion.

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> 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.
Source§

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