#[cfg(feature = "serde")]
use serde::Serialize;
use crate::processed::drawing::common_types::adjust_angle::AdjustAngle;
use crate::processed::drawing::common_types::position::Position;
use crate::raw::drawing::shape::connection_site::XlsxConnectionSite;
use crate::raw::drawing::shape::shape_guide::XlsxShapeGuide;
#[derive(Debug, Clone, PartialEq)]
#[cfg_attr(feature = "serde", derive(Serialize))]
pub struct ConnectionSite {
pub position: Position,
pub angle: AdjustAngle,
}
impl ConnectionSite {
pub(crate) fn from_raw(
raw: XlsxConnectionSite,
guide_list: Option<Vec<XlsxShapeGuide>>,
) -> Self {
return Self {
position: Position::from_position(raw.clone().position, guide_list.clone()),
angle: AdjustAngle::from_raw(raw.angle, guide_list.clone()),
};
}
}