예제 #1
0
        protected override void MarkLineInternal(Surface <T> texture, Utensil <T> utensil, VectorF2 point1, VectorF2 point2)
        {
            float start = 0.0f;
            float end   = point1.GetDistanceTo(point2);

            for (float position = start; position < end; position += scratch_internode)
            {
                float pos1 = start - margin_rand.Get();
                float pos2 = (position + length_rand.Get()).BindBelow(end) + margin_rand.Get();

                internal_line_tool.MarkLines(texture, utensil,
                                             RandVectorF2.GetNearLinePoint(point1, point2, pos1, scratch_radius),
                                             RandVectorF2.GetNearLinePoint(point1, point2, pos2, scratch_radius)
                                             );
            }
        }
예제 #2
0
 public void StrokeTo(VectorF2 point)
 {
     line_tool.MarkLines(GetSurface(), GetUtensil(), current_point, point);
     current_point = point;
 }