pub struct LandXmlPlanDocument {
pub schema: String,
pub version: String,
pub capability_diagnostics: Vec<LandXmlCapabilityDiagnostic>,
pub units: Option<LandXmlUnits>,
pub area_unit: Option<String>,
pub area_scale_to_square_meters: Option<f64>,
pub monuments: Vec<LandXmlMonument>,
pub plan_features: Vec<LandXmlPlanFeature>,
pub parcels: Vec<LandXmlParcel>,
pub warnings: Vec<String>,
/* private fields */
}Expand description
Durable COGO and plan records joined to the canonical LandXML document.
Fields§
§schema: StringNamespace-selected grammar used to parse this source, independent from the producer’s declared version string.
version: String§capability_diagnostics: Vec<LandXmlCapabilityDiagnostic>Compatibility observations retained for direct plan-parser consumers.
units: Option<LandXmlUnits>§area_unit: Option<String>§area_scale_to_square_meters: Option<f64>§monuments: Vec<LandXmlMonument>§plan_features: Vec<LandXmlPlanFeature>§parcels: Vec<LandXmlParcel>§warnings: Vec<String>Implementations§
Source§impl LandXmlPlanDocument
impl LandXmlPlanDocument
Sourcepub fn cogo_points(&self) -> &[LandXmlCgPoint]
pub fn cogo_points(&self) -> &[LandXmlCgPoint]
COGO records are immutable through this view so the derived resolver
index cannot become stale behind a public Vec mutation.
Sourcepub fn replace_cogo_points(&mut self, cogo_points: Vec<LandXmlCgPoint>)
pub fn replace_cogo_points(&mut self, cogo_points: Vec<LandXmlCgPoint>)
Replace authored COGO records and invalidate their resolver index.
Source§impl LandXmlPlanDocument
impl LandXmlPlanDocument
Sourcepub fn probe_parcel(&self, parcel: &LandXmlParcel) -> LandXmlParcelProbe
pub fn probe_parcel(&self, parcel: &LandXmlParcel) -> LandXmlParcelProbe
Probe a parcel in authored units with the default topology work bound.
Sourcepub fn probe_parcel_with_cancel(
&self,
parcel: &LandXmlParcel,
max_topology_work: usize,
cancelled: Option<&dyn LandXmlCancellation>,
) -> Result<LandXmlParcelProbe, LandXmlError>
pub fn probe_parcel_with_cancel( &self, parcel: &LandXmlParcel, max_topology_work: usize, cancelled: Option<&dyn LandXmlCancellation>, ) -> Result<LandXmlParcelProbe, LandXmlError>
Probe a parcel while polling cancellation inside pairwise topology work.
Sourcepub fn probe_parcels_with_resolver(
&self,
parcels: &[LandXmlParcel],
resolver: &mut LandXmlPlanResolver<'_>,
) -> Result<Vec<LandXmlParcelProbe>, LandXmlError>
pub fn probe_parcels_with_resolver( &self, parcels: &[LandXmlParcel], resolver: &mut LandXmlPlanResolver<'_>, ) -> Result<Vec<LandXmlParcelProbe>, LandXmlError>
Probe many parcels through one document-scoped resolver. Alias resolution is aggregate and path-compressed across the document, while each parcel gets a checked topology bound. This keeps a pathological boundary local to its source record rather than starving its siblings.
Source§impl LandXmlPlanDocument
impl LandXmlPlanDocument
Sourcepub fn resolve_point(
&self,
scope_id: Option<&LandXmlSourceId>,
location: &LandXmlPlanPointLocation,
) -> Option<LandXmlPlanPoint>
pub fn resolve_point( &self, scope_id: Option<&LandXmlSourceId>, location: &LandXmlPlanPointLocation, ) -> Option<LandXmlPlanPoint>
Resolve a COGO reference in its producer scope, falling back only when the document has one unambiguous name match.
Sourcepub fn resolve_point_with_cancel(
&self,
scope_id: Option<&LandXmlSourceId>,
location: &LandXmlPlanPointLocation,
cancelled: Option<&dyn LandXmlCancellation>,
) -> Result<Option<LandXmlPlanPoint>, LandXmlError>
pub fn resolve_point_with_cancel( &self, scope_id: Option<&LandXmlSourceId>, location: &LandXmlPlanPointLocation, cancelled: Option<&dyn LandXmlCancellation>, ) -> Result<Option<LandXmlPlanPoint>, LandXmlError>
Resolve a COGO reference while allowing hosts to interrupt alias work.
Sourcepub fn resolve_monument_point(
&self,
monument: &LandXmlMonument,
) -> Option<LandXmlPlanPoint>
pub fn resolve_monument_point( &self, monument: &LandXmlMonument, ) -> Option<LandXmlPlanPoint>
Resolve a monument’s direct coordinate or its scoped pntRef.
Source§impl LandXmlPlanDocument
impl LandXmlPlanDocument
Sourcepub fn source_batches(&self, max_records: usize) -> Vec<LandXmlPlanSourceBatch>
pub fn source_batches(&self, max_records: usize) -> Vec<LandXmlPlanSourceBatch>
Partition plan-source identities without coupling semantic records to a renderer allocation or introducing a second model-load path.
Trait Implementations§
Source§impl Clone for LandXmlPlanDocument
impl Clone for LandXmlPlanDocument
Source§fn clone(&self) -> LandXmlPlanDocument
fn clone(&self) -> LandXmlPlanDocument
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LandXmlPlanDocument
impl Debug for LandXmlPlanDocument
Source§impl<'de> Deserialize<'de> for LandXmlPlanDocument
impl<'de> Deserialize<'de> for LandXmlPlanDocument
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>,
Source§impl PartialEq for LandXmlPlanDocument
impl PartialEq for LandXmlPlanDocument
Source§impl Serialize for LandXmlPlanDocument
impl Serialize for LandXmlPlanDocument
impl StructuralPartialEq for LandXmlPlanDocument
Auto Trait Implementations§
impl !Freeze for LandXmlPlanDocument
impl !RefUnwindSafe for LandXmlPlanDocument
impl Send for LandXmlPlanDocument
impl !Sync for LandXmlPlanDocument
impl Unpin for LandXmlPlanDocument
impl UnwindSafe for LandXmlPlanDocument
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.