Ejemplo n.º 1
0
		/// <summary>
		/// Update the IM with the contribution for this component.
		/// A component only contributes if it has a labelling for both parent geometries
		/// </summary>
		/// <param name="im"></param>
		protected override void ComputeIM( IntersectionMatrix im )
		{
			im.SetAtLeastIfValid( _label.GetLocation( 0 ), _label.GetLocation( 1 ), 0 );
		} // protected override void ComputeIM( IntersectionMatrix im )
Ejemplo n.º 2
0
 /// <summary>
 /// Updates an IM from the label for an edge. Handles edges from both L and A geometrys.
 /// </summary>
 /// <param name="label"></param>
 /// <param name="im"></param>
 public static void UpdateIM(Label label, IntersectionMatrix im)
 {
     im.SetAtLeastIfValid( label.GetLocation( 0, Position.On ), label.GetLocation( 1, Position.On ), 1);
     if ( label.IsArea() )
     {
         im.SetAtLeastIfValid( label.GetLocation( 0, Position.Left ),  label.GetLocation( 1, Position.Left ),   2);
         im.SetAtLeastIfValid( label.GetLocation( 0, Position.Right ), label.GetLocation( 1, Position.Right ),  2);
     }
 }