Commit: b4d0795be5e3e1aec680d44cc76db8c652bb9343
Author: Antonioya
Date:   Mon Dec 17 18:35:43 2018 +0100
Branches: greasepencil-object
https://developer.blender.org/rBb4d0795be5e3e1aec680d44cc76db8c652bb9343

Merge branch 'blender2.8' into greasepencil-object

===================================================================



===================================================================

diff --cc source/blender/editors/gpencil/gpencil_primitive.c
index fecf34676f0,5c95dbf2a01..d12f6214470
--- a/source/blender/editors/gpencil/gpencil_primitive.c
+++ b/source/blender/editors/gpencil/gpencil_primitive.c
@@@ -529,67 -519,11 +531,68 @@@ static void gp_primitive_line(tGPDprimi
                UI_GetThemeColor4fv(TH_REDALERT, color);
                gp_primitive_set_cp(tgpi, tgpi->start, color, SMALL_SIZE_CTL);
        }
-       else
+       else {
                gp_primitive_set_cp(tgpi, tgpi->start, color, BIG_SIZE_CTL);
+       }
  }
  
 +/* create a chord */
 +static void gp_primitive_chord(tGPDprimitive *tgpi, tGPspoint *points2D)
 +{
 +      const int totpoints = (tgpi->tot_edges + tgpi->tot_stored_edges);
 +      float cp[2];
 +      float point[2];
 +      float center[2];
 +
 +      copy_v2_v2(cp, tgpi->cp1);
 +      mid_v2_v2v2(tgpi->midpoint, tgpi->start, tgpi->end);
 +      closest_to_line_v2(point, cp, tgpi->start, tgpi->end);
 +
 +      center[0] = tgpi->midpoint[0] + cp[0] - point[0];
 +      center[1] = tgpi->midpoint[1] + cp[1] - point[1];
 +
 +      float cross = cross_tri_v2(tgpi->start, center, tgpi->end);
 +      float stepangle;
 +      float step;
 +
 +      if (!tgpi->flip) {
 +              float fcenter[2];
 +              gp_reflect_point_v2_v2v2v2(fcenter, center, tgpi->start, 
tgpi->end);
 +              stepangle = angle_v2v2v2(tgpi->start, fcenter, tgpi->end);
 +              if (cross < 0.0f) {
 +                      stepangle = (M_PI * 2.0f) - stepangle;
 +              }
 +              step = stepangle / (float)(tgpi->tot_edges - 1);
 +              step = -step;
 +      }
 +      else {
 +              stepangle = angle_v2v2v2(tgpi->start, center, tgpi->end); ;
 +              if (cross > 0.0f) {
 +                      stepangle = (M_PI * 2.0f) - stepangle;
 +              }
 +              step = stepangle / (float)(tgpi->tot_edges - 1);
 +      }
 +
 +      float a = tgpi->tot_stored_edges ? step : 0.0f;
 +
 +      for (int i = tgpi->tot_stored_edges; i < totpoints; i++) {
 +              tGPspoint *p2d = &points2D[i];
 +              gp_rotate_v2_v2v2fl(&p2d->x, tgpi->start, center, a);
 +              a += step;
 +      }
 +      float color[4];
 +      UI_GetThemeColor4fv(TH_ACTIVE_VERT, color);
 +      gp_primitive_set_cp(tgpi, tgpi->end, color, BIG_SIZE_CTL);
 +      if (tgpi->tot_stored_edges) {
 +              UI_GetThemeColor4fv(TH_REDALERT, color);
 +              gp_primitive_set_cp(tgpi, tgpi->start, color, SMALL_SIZE_CTL);
 +      }
 +      else
 +              gp_primitive_set_cp(tgpi, tgpi->start, color, BIG_SIZE_CTL);
 +      UI_GetThemeColor4fv(TH_GP_VERTEX_SELECT, color);
 +      gp_primitive_set_cp(tgpi, center, color, BIG_SIZE_CTL * 0.9f);
 +}
 +
  /* create an arc */
  static void gp_primitive_arc(tGPDprimitive *tgpi, tGPspoint *points2D)
  {

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to