fn init_beach_line_collinear_sites(
        &mut self,
        site_event_iterator_: &VSE::SiteEventIndexType,
        output: &mut VD::Diagram<I, F>,
    ) -> Result<(), BvError> {
        let mut it_first: VSE::SiteEventIndexType = 0;
        let mut it_second: VSE::SiteEventIndexType = 1;
        while it_second != *site_event_iterator_ {
            let first = &self.site_events_[it_first];
            let second = &self.site_events_[it_second];

            // Create a new beach line node.
            let new_node_key = VB::BeachLineNodeKey::<I, F>::new_2(*first, *second);

            // Update the output.
            let edge = output._insert_new_edge_2(*first, *second).0;

            // Insert a new bisector into the beach line.
            #[cfg(feature = "console_debug")]
            let _ = self.beach_line_.insert(
                self.beach_line_.last_position()?,
                new_node_key,
                VB::BeachLineNodeData::new_1(edge),
                &self.circle_events_,
            );
            #[cfg(not(feature = "console_debug"))]
            let _ = self.beach_line_.insert(
                self.beach_line_.last_position()?,
                new_node_key,
                Some(VB::BeachLineNodeData::new_1(edge)),
            );
            // Update iterators.
            it_first += 1;
            it_second += 1;
        }
        Ok(())
    }
/// Init beach line with collinear sites.
Init beach line with collinear sites.
Init beach line with collinear sites .
fn init_beach_line_collinear_sites(
        &mut self,
        site_event_iterator_: &VSE::SiteEventIndexType,
        output: &mut VD::Diagram<I, F>,
    ) -> Result<(), BvError> {
        let mut it_first: VSE::SiteEventIndexType = 0;
        let mut it_second: VSE::SiteEventIndexType = 1;
        while it_second != *site_event_iterator_ {
            let first = &self.site_events_[it_first];
            let second = &self.site_events_[it_second];
            // Create a new beach line node.
            let new_node_key = VB::BeachLineNodeKey::<I, F>::new_2(*first, *second);
            // Update the output.
            let edge = output._insert_new_edge_2(*first, *second).0;
            // Insert a new bisector into the beach line.
            #[cfg(feature = "console_debug")]
            let _ = self.beach_line_.insert(
                self.beach_line_.last_position()?,
                new_node_key,
                VB::BeachLineNodeData::new_1(edge),
                &self.circle_events_,
            );
            #[cfg(not(feature = "console_debug"))]
            let _ = self.beach_line_.insert(
                self.beach_line_.last_position()?,
                new_node_key,
                Some(VB::BeachLineNodeData::new_1(edge)),
            );
            // Update iterators.
            it_first += 1;
            it_second += 1;
        }
        Ok(())
    }
fn init_beach_line_collinear_sites ( & mut self , site_event_iterator_ : & VSE :: SiteEventIndexType , output : & mut VD :: Diagram < I , F > , ) -> Result < ( ) , BvError > { let mut it_first : VSE :: SiteEventIndexType = 0 ; let mut it_second : VSE :: SiteEventIndexType = 1 ; while it_second != * site_event_iterator_ { let first = & self . site_events_ [ it_first ] ; let second = & self . site_events_ [ it_second ] ; // Create a new beach line node. let new_node_key = VB :: BeachLineNodeKey :: < I , F > :: new_2 ( * first , * second ) ; // Update the output. let edge = output . _insert_new_edge_2 ( * first , * second ) . 0 ; // Insert a new bisector into the beach line. # [ cfg ( feature " " ) ] let _ = self . beach_line_ . insert ( self . beach_line_ . last_position ( ) ? , new_node_key , VB :: BeachLineNodeData :: new_1 ( edge ) , & self . circle_events_ , ) ; # [ cfg ( not ( feature " " ) ) ] let _ = self . beach_line_ . insert ( self . beach_line_ . last_position ( ) ? , new_node_key , Some ( VB :: BeachLineNodeData :: new_1 ( edge ) ) , ) ; // Update iterators. it_first += 1 ; it_second += 1 ; } Ok ( ( ) ) }
Init beach line with collinear sites.
Init beach line with collinear sites .
&mut self
site_event_iterator_
&VSE::SiteEventIndexType
output
&mut VD::Diagram<I, F>