Struct epoint_core::PointData
source · pub struct PointData {
pub data_frame: DataFrame,
}
Expand description
Wrapper around the data frame with type-safe columns.
Fields§
§data_frame: DataFrame
Implementations§
source§impl PointData
impl PointData
pub fn get_x_values(&self) -> &Float64Chunked
pub fn get_y_values(&self) -> &Float64Chunked
pub fn get_z_values(&self) -> &Float64Chunked
pub fn get_id_values(&self) -> Result<&UInt64Chunked, Error>
pub fn get_frame_id_values(&self) -> Result<&CategoricalChunked, Error>
pub fn get_timestamp_sec_values(&self) -> Result<&Int64Chunked, Error>
pub fn get_timestamp_nanosec_values(&self) -> Result<&UInt32Chunked, Error>
pub fn get_intensity_values(&self) -> Result<&Float32Chunked, Error>
pub fn get_beam_origin_x_values(&self) -> Result<&Float64Chunked, Error>
pub fn get_beam_origin_y_values(&self) -> Result<&Float64Chunked, Error>
pub fn get_beam_origin_z_values(&self) -> Result<&Float64Chunked, Error>
pub fn get_color_red_values(&self) -> Result<&UInt16Chunked, Error>
pub fn get_color_green_values(&self) -> Result<&UInt16Chunked, Error>
pub fn get_color_blue_values(&self) -> Result<&UInt16Chunked, Error>
pub fn get_spherical_azimuth_values(&self) -> Result<&Float64Chunked, Error>
pub fn get_spherical_elevation_values(&self) -> Result<&Float64Chunked, Error>
pub fn get_spherical_range_values(&self) -> Result<&Float64Chunked, Error>
source§impl PointData
impl PointData
pub fn contains_id_column(&self) -> bool
pub fn contains_frame_id_column(&self) -> bool
pub fn contains_timestamp_sec_column(&self) -> bool
pub fn contains_timestamp_nanosec_column(&self) -> bool
pub fn contains_intensity_column(&self) -> bool
pub fn contains_beam_origin_x_column(&self) -> bool
pub fn contains_beam_origin_y_column(&self) -> bool
pub fn contains_beam_origin_z_column(&self) -> bool
pub fn contains_color_red_column(&self) -> bool
pub fn contains_color_green_column(&self) -> bool
pub fn contains_color_blue_column(&self) -> bool
pub fn contains_spherical_azimuth_column(&self) -> bool
pub fn contains_spherical_elevation_column(&self) -> bool
pub fn contains_spherical_range_column(&self) -> bool
source§impl PointData
impl PointData
pub fn contains_timestamps(&self) -> bool
pub fn contains_beam_origin(&self) -> bool
pub fn contains_colors(&self) -> bool
source§impl PointData
impl PointData
sourcepub fn get_all_points(&self) -> Vec<Point3<f64>>
pub fn get_all_points(&self) -> Vec<Point3<f64>>
Returns all points as a vector in the local coordinate frame.
pub fn get_frame_ids(&self) -> Result<Vec<FrameId>, Error>
pub fn get_all_timestamps(&self) -> Result<Vec<DateTime<Utc>>, Error>
sourcepub fn get_all_beam_origins(&self) -> Result<Vec<Point3<f64>>, Error>
pub fn get_all_beam_origins(&self) -> Result<Vec<Point3<f64>>, Error>
Returns all points as a vector in the local coordinate frame.
pub fn get_all_colors(&self) -> Result<Vec<Srgb<u16>>, Error>
pub fn get_all_spherical_points( &self, ) -> Result<Vec<SphericalPoint3<f64>>, Error>
source§impl PointData
impl PointData
pub fn get_distinct_frame_ids(&self) -> Result<HashSet<FrameId>, Error>
pub fn get_median_time(&self) -> Result<DateTime<Utc>, Error>
sourcepub fn get_axis_aligned_bounding_box(&self) -> AxisAlignedBoundingBox
pub fn get_axis_aligned_bounding_box(&self) -> AxisAlignedBoundingBox
Returns the AABB.
sourcepub fn get_local_min(&self) -> Point3<f64>
pub fn get_local_min(&self) -> Point3<f64>
Returns the minimum point of the AABB.
sourcepub fn get_local_max(&self) -> Point3<f64>
pub fn get_local_max(&self) -> Point3<f64>
Returns the maximum point of the AABB.
sourcepub fn get_local_center(&self) -> Point3<f64>
pub fn get_local_center(&self) -> Point3<f64>
Returns the center point of the AABB.
pub fn get_id_min(&self) -> Result<Option<u64>, Error>
pub fn get_id_max(&self) -> Result<Option<u64>, Error>
pub fn get_intensity_min(&self) -> Result<Option<f32>, Error>
pub fn get_intensity_max(&self) -> Result<Option<f32>, Error>
pub fn derive_convex_hull(&self) -> Option<ConvexPolyhedron>
source§impl PointData
impl PointData
sourcepub fn add_sequential_id(&mut self) -> Result<(), Error>
pub fn add_sequential_id(&mut self) -> Result<(), Error>
Adds a sequentially increasing id column, if no column exists.
sourcepub fn derive_spherical_points(&mut self) -> Result<(), Error>
pub fn derive_spherical_points(&mut self) -> Result<(), Error>
Derives spherical points.
sourcepub fn add_i64_column(
&mut self,
name: &str,
values: Vec<i64>,
) -> Result<(), Error>
pub fn add_i64_column( &mut self, name: &str, values: Vec<i64>, ) -> Result<(), Error>
Add a new column to this DataFrame or replace an existing one.
sourcepub fn add_u32_column(
&mut self,
name: &str,
values: Vec<u32>,
) -> Result<(), Error>
pub fn add_u32_column( &mut self, name: &str, values: Vec<u32>, ) -> Result<(), Error>
Add a new column to this DataFrame or replace an existing one.
sourcepub fn add_f32_column(
&mut self,
name: &str,
values: Vec<f32>,
) -> Result<(), Error>
pub fn add_f32_column( &mut self, name: &str, values: Vec<f32>, ) -> Result<(), Error>
Add a new column to this DataFrame or replace an existing one.
source§impl PointData
impl PointData
pub fn extract_frame_ids(&self) -> Result<Vec<FrameId>, Error>
pub fn extract_beam_origins(&self) -> Result<Vec<Point3<f64>>, Error>
pub fn extract_timestamps(&self) -> Result<Vec<DateTime<Utc>>, Error>
pub fn update_points_in_place( &mut self, points: Vec<Point3<f64>>, ) -> Result<(), Error>
pub fn update_beam_origins_in_place( &mut self, beam_origins: Vec<Point3<f64>>, ) -> Result<(), Error>
pub fn add_spherical_points( &mut self, spherical_points: Vec<SphericalPoint3<f64>>, ) -> Result<(), Error>
pub fn add_unique_frame_id(&mut self, frame_id: FrameId) -> Result<(), Error>
pub fn add_frame_ids(&mut self, frame_ids: Vec<FrameId>) -> Result<(), Error>
pub fn add_unique_color(&mut self, color: Srgb<u16>) -> Result<(), Error>
pub fn add_colors(&mut self, colors: Vec<Srgb<u16>>) -> Result<(), Error>
pub fn filter_by_row_indices( &self, row_indices: HashSet<usize>, ) -> Result<PointData, Error>
pub fn filter_by_boolean_mask( &self, boolean_mask: &BooleanChunked, ) -> Result<PointData, Error>
pub fn filter_by_bounds( &self, bound_min: Point3<f64>, bound_max: Point3<f64>, ) -> Result<Option<PointData>, Error>
pub fn filter_by_beam_length( &self, beam_length_min: f64, beam_length_max: f64, ) -> Result<Option<PointData>, Error>
Trait Implementations§
impl StructuralPartialEq for PointData
Auto Trait Implementations§
impl Freeze for PointData
impl !RefUnwindSafe for PointData
impl Send for PointData
impl Sync for PointData
impl Unpin for PointData
impl !UnwindSafe for PointData
Blanket Implementations§
source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Convert the source color to the destination color using the specified
method.
source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Convert the source color to the destination color using the bradford
method by default.
source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Cast a collection of colors into a collection of arrays.
source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Cast this collection of arrays into a collection of colors.
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
source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
The number type that’s used in
parameters
when converting.source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
Converts
self
into C
, using the provided parameters.source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Cast a collection of colors into a collection of color components.
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
Performs a conversion from
angle
.source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
Converts
other
into Self
, while performing the appropriate scaling,
rounding and clamping.source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
source§fn into_angle(self) -> U
fn into_angle(self) -> U
Performs a conversion into
T
.source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
The number type that’s used in
parameters
when converting.source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
Converts
self
into C
, using the provided parameters.source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
source§fn into_color(self) -> U
fn into_color(self) -> U
Convert into T with values clamped to the color defined bounds Read more
source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Convert into T. The resulting color might be invalid in its color space Read more
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>
Converts
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>
Converts
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 moresource§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
Converts
self
into T
, while performing the appropriate scaling,
rounding and clamping.source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
The error for when
try_into_colors
fails to cast.source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Try to cast this collection of color components into a collection of
colors. Read more
source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
Convert into T, returning ok if the color is inside of its defined
range, otherwise an
OutOfBounds
error is returned which contains
the unclamped color. Read moresource§impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
source§fn uints_from(colors: C) -> U
fn uints_from(colors: C) -> U
Cast a collection of colors into a collection of unsigned integers.
source§impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
source§fn uints_into(self) -> C
fn uints_into(self) -> C
Cast this collection of unsigned integers into a collection of colors.