Wings 3D Development Forum

Full Version: [W.I.P.] Curve Tools plugin
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13
Adding the flexibility of Tweak operations to give us more freedom to change the object's shape without a dialog:
Scale Uniform, Scale constrained to X and/or Y.



Playing with the twisted shape and after convert it to mesh I added some vertex colours. :-)



The plugin was updated. The previous link is still valid.
Micheus,
Thank you very much for all the work you are doing on this. It is looking very impressive. I hope to have time to play with it in 2021.

Thanks again,
oort
Thanks oort

Here is my first "official" video about it. I hope it helps to understand the basic of create and edit curves:


Thanks for upload official video!!
I'm looking forward to the next continuation.Smile
A new update is available.
Code:
- Fixed bèzier handle length for the first vertex control which has been truncated;
- Fixed the normal value for ribbon shape used in Sweep;
- Fixed the computation of the vectors (TNBs) and then was removed the need
  for re-compute the vectors to the 'Tangent' twist mode;
- Fixed close command when using CTRL+Click;
- Fixed wrong bèzier handle orientation when this kind of curve is closed;
- Fixed sweep object which was aligning the shape wrongly;
- Added drag and drop option on Outliner window to duplicate a dragged object
  using the curve where it was drop. It can be a single curve over the mouse
  pointer or multiple selected curves on Curve's geometry window;

Plugin updated: link
Thank you for update!

I tried and founded a crash.
How to recrate?
  1. Make Curve by Line.
  2. Change Curve Type to Bezier
  3. Wings3D crash.

FYI: I updated curve plug-in from zip file install(Newest version).
Error Dialog message is:
Now might be a good time to save your work and restart Wings3D
and it get a following log
Code:
Dump written 2021-1-24_22-53
Version: 2.2.6.1
OS: macOS Mojave Version 10.14.6 (Build 18G7016)
GPU: Intel Inc. | Intel Iris OpenGL Engine
Window: {plugin,{curves,geom}}
Reason: function_clause

Short stack trace:
[{e3d_vec,add,2,[{file,"e3d_vec.erl"},{line,53}]},
{ct_bezier,'-calc_curve/1-fun-0-',6,[{file,"ct_bezier.erl"},{line,34}]},
{array,sparse_foldl_3,7,[{file,"array.erl"},{line,1684}]},
{ct_bezier,calc_curve,1,[{file,"ct_bezier.erl"},{line,30}]},
{curve_math,calc_curve,1,[{file,"curve_math.erl"},{line,124}]},
{curve_cmds,'-convert_curve/2-fun-0-',3,
             [{file,"curve_cmds.erl"},{line,1074}]},
{curve_sel,map_1,5,[{file,"curve_sel.erl"},{line,514}]},
{curve_sel,map,2,[{file,"curve_sel.erl"},{line,119}]},
{curve_cmds,convert_curve,2,[{file,"curve_cmds.erl"},{line,1072}]},
{wpc_curves,raw_command,4,[{file,"wpc_curves.erl"},{line,867}]},
{wings_wm,handle_event,3,[{file,"wings_wm.erl"},{line,1030}]},
{wings_wm,send_event,2,[{file,"wings_wm.erl"},{line,996}]},
{wings_wm,do_dispatch,2,[{file,"wings_wm.erl"},{line,888}]},
{wings_wm,dispatch_event,1,[{file,"wings_wm.erl"},{line,797}]},
{wings_wm,get_and_dispatch,0,[{file,"wings_wm.erl"},{line,683}]},
{wings,init_part2,3,[{file,"wings.erl"},{line,108}]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,249}]}]

Long stack trace:
[{e3d_vec,add,
          [{-1.2808961366362963,0.593822418282195,0.8892948274755286},none],
          [{file,"e3d_vec.erl"},{line,53}]},
{ct_bezier,'-calc_curve/1-fun-0-',6,[{file,"ct_bezier.erl"},{line,34}]},
{array,sparse_foldl_3,7,[{file,"array.erl"},{line,1684}]},
{ct_bezier,calc_curve,1,[{file,"ct_bezier.erl"},{line,30}]},
{curve_math,calc_curve,1,[{file,"curve_math.erl"},{line,124}]},
{curve_cmds,'-convert_curve/2-fun-0-',3,
             [{file,"curve_cmds.erl"},{line,1074}]},
{curve_sel,map_1,5,[{file,"curve_sel.erl"},{line,514}]},
{curve_sel,map,2,[{file,"curve_sel.erl"},{line,119}]},
{curve_cmds,convert_curve,2,[{file,"curve_cmds.erl"},{line,1072}]},
{wpc_curves,raw_command,4,[{file,"wpc_curves.erl"},{line,867}]},
{wings_wm,handle_event,3,[{file,"wings_wm.erl"},{line,1030}]},
{wings_wm,send_event,2,[{file,"wings_wm.erl"},{line,996}]},
{wings_wm,do_dispatch,2,[{file,"wings_wm.erl"},{line,888}]},
{wings_wm,dispatch_event,1,[{file,"wings_wm.erl"},{line,797}]},
{wings_wm,get_and_dispatch,0,[{file,"wings_wm.erl"},{line,683}]},
{wings,init_part2,3,[{file,"wings.erl"},{line,108}]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,249}]}]

------
tkbd
Thanks for test and report it.
I already fixed the problem. The link was updated.
Hi! Smile
The Curve plugin also has the feature that create a curve(s) from a selected edge(s) of an object(s).
This feature is very convenient for create multiple curves with object surface snapping.BiggrinBiggrinBiggrin
It's simple ,quick and easy,Apply "convert to" command and choose a line type.

I tested it,and found some crashes.
How to reacrete it.
  1. Use "convert to" command , for create a curve from an object edge selection.
  2. Select the object body and the curve on curve plugin geometry window.
  3. Again,Use "convert to" command.
  4. Wings3d Crash(curve plugin geometry window is missing)

Note:
It occured ONLY the case when a curve generated from an edge!!
This crash doesn't occur on curve(s) created in the usual way.
For example, A Grid object and some curves create from the edge on the Grid.

Crash log is here.
Code:
Dump written 2021-1-30_8-40
Version: 2.2.6.1
OS: macOS Mojave Version 10.14.6 (Build 18G7016)
GPU: Intel Inc. | Intel Iris OpenGL Engine
Window: {plugin,{curves,geom}}
Reason: function_clause

Short stack trace:
[{curve_sel,map_1,5,[{file,"curve_sel.erl"},{line,512}]},
{curve_sel,map,2,[{file,"curve_sel.erl"},{line,119}]},
{curve_cmds,convert_curve,2,[{file,"curve_cmds.erl"},{line,1072}]},
{wpc_curves,raw_command,4,[{file,"wpc_curves.erl"},{line,867}]},
{wings_wm,handle_event,3,[{file,"wings_wm.erl"},{line,1030}]},
{wings_wm,send_event,2,[{file,"wings_wm.erl"},{line,996}]},
{wings_wm,do_dispatch,2,[{file,"wings_wm.erl"},{line,888}]},
{wings_wm,dispatch_event,1,[{file,"wings_wm.erl"},{line,797}]},
{wings_wm,get_and_dispatch,0,[{file,"wings_wm.erl"},{line,683}]},
{wings,init_part2,3,[{file,"wings.erl"},{line,108}]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,249}]}]

Long stack trace:
[{curve_sel,map_1,
     [#Fun<curve_cmds.54.106915862>,
      [{2,{1,{0,nil,nil}}}],
      [],
      {cst,
          {3,
           {1,
            {curve,1,nurbs,"Linear1",
                {array,5,10,undefined,
                    {{cv,{-1.0,0.1,0.0},
                         {ctrlp,{-1.0,0.0,0.0},0.5},
                         {ctrlp,{1.0,0.0,0.0},0.5},
                         nurbs,
                         {1.0,1.0,0.0},
                         1.0},
                     {cv,{-0.5,0.1,0.0},
                         {ctrlp,{-1.0,0.0,0.0},0.5},
                         none,corner,
                         {1.0,1.0,0.0},
                         1.0},
                     {cv,{0.0,0.1,0.0},
                         {ctrlp,{1.0,0.0,0.0},1.0},
                         {ctrlp,{-1.0,0.0,0.0},0.5},
                         corner,
                         {1.0,1.0,0.0},
                         1.0},
                     {cv,{0.0,0.1,0.5},
                         {ctrlp,
                             {0.7071067811865475,0.0,0.7071067811865475},
                             0.7071067811865476},
                         {ctrlp,{0.0,0.0,-1.0},0.5},
                         corner,
                         {1.0,1.0,0.0},
                         1.0},
                     {cv,{0.5,0.1,0.5},
                         {ctrlp,
                             {0.7071067811865475,0.0,0.7071067811865475},
                             0.7071067811865476},
                         {ctrlp,{-1.0,0.0,0.0},0.5},
                         corner,
                         {1.0,1.0,0.0},
                         1.0},
                     undefined,undefined,undefined,undefined,undefined}},
                {array,4,10,undefined,
                    {{segment,0,1},
                     {segment,1,2},
                     {segment,2,3},
                     {segment,3,4},
                     undefined,undefined,undefined,undefined,undefined,
                     undefined}},
                6,false,true,tangent,
                [{cp,{-1.0,0.1,0.0},
                     0.0,
                     {6.035001918489703e-4,2.89102826988864e-14,
                      -0.9999998178937427},
                     {0.9999998178937426,1.1577942288399038e-16,
                      6.035001918489702e-4},
                     {-1.3322676295501893e-16,1.0,2.89102075612391e-14}},
                 {cp,{-0.8801359953703705,0.10000000000000002,
                      7.233796296296297e-5},
                     0.11986402645761879,
                     {0.0025188836967441554,2.891045142943259e-14,
                      -0.9999968276074291},
                     {0.999996827607429,6.04048898119311e-17,
                      0.002518883696744155},
                     {-1.3322676295501893e-16,1.0,2.89102075612391e-14}},
                 {cp,{-0.7702546296296298,0.10000000000000002,
                      5.787037037037037e-4},
                     0.22974655893350332,
                     {0.008946648116488053,1.521591707801471e-14,
                      -0.9999599779428574},
                     {0.9999599779428573,-6.601474898902074e-17,
                      0.008946648116488052},
                     {-7.011934892369418e-17,1.0,1.5215898716441635e-14}},
                 {cp,{-0.669921875,0.1,0.001953125},
                     0.3300887269660369,
                     {0.021143308721553438,8.806376947389175e-16,
                      -0.9997764552620277},
                     {0.9997764552620277,-1.448668069267465e-16,
                      0.021143308721553438},
                     {1.2621482806264903e-16,1.0,8.835037964385562e-16}},
                 {cp,{-0.5787037037037037,0.09999999999999999,
                      0.0046296296296296285},
                     0.4213461565357595,
                     {0.0407654192301747,-1.3289498608657346e-14,
                      -0.9991687448048944},
                     {0.9991687448048944,0.0,0.0407654192301747},
                     {5.417519821407401e-16,1.0,-1.3278451643898551e-14}},
                 {cp,{-0.496166087962963,0.1,0.009042245370370367},
                     0.5040016414707691,
                     {0.06993901883730794,4.8019844680941475e-15,
                      -0.9975512686794974},
                     {0.9975512686794973,8.827341237421215e-17,
                      0.06993901883730792},
                     {-4.239033366750604e-16,1.0,4.784051942475684e-15}},
                 {cp,{-0.421875,0.1,0.015624999999999998},
                     0.5785838002571345,
                     {0.11132828538693379,4.225324576871482e-15,
                      -0.9937836851512534},
                     {0.9937836851512533,-9.797223030231444e-17,
                      0.11132828538693378},
                     {-3.730349362740523e-16,1.0,4.209965709378592e-15}},
                 {cp,{-0.3553964120370371,0.09999999999999999,
                      0.024811921296296287},
                     0.6456941733782381,
                     {0.1680811385619649,-1.000438492580594e-14,
                      -0.9857731639985507},
                     {0.9857731639985506,1.0893846164304924e-16,
                      0.16808113856196488},
                     {1.5741597969266176e-15,1.0,-9.880364682837279e-15}},
                 {cp,{-0.29629629629629634,0.10000000000000002,
                      0.037037037037037035},
                     0.7060454545199294,
                     {0.24342583378774083,8.08992339672232e-15,
                      -0.9699195139003768},
                     {0.9699195139003768,1.2098550163585668e-16,
                      0.24342583378774083},
                     {-2.0866425470617265e-15,1.0,7.817123571828261e-15}},
                 {cp,{-0.244140625,0.1,0.052734375},
                     0.7605121458779583,
                     {0.3395076921352739,-2.2495215973050015e-15,
                      -0.9406032782108407},
                     {0.9406032782108406,-1.3347003193232925e-16,
                      0.3395076921352738},
                     {8.892722354879305e-16,1.0,-2.0705932863206046e-15}},
                 {cp,{-0.19849537037037032,0.1,0.07233796296296299},
                     0.8101890009638568,
                     {0.4550577841940816,0.0,-0.8904619099345983},
                     {0.8904619099345983,0.0,0.4550577841940816},
                     {0.0,1.0,0.0}},
                 {cp,{-0.1589265046296296,0.1,0.09628182870370372},
                     0.856438366825665,
                     {0.5824484617281076,0.0,-0.8128676334007655},
                     {0.8128676334007655,0.0,0.5824484617281076},
                     {0.0,1.0,0.0}},
                 {cp,{-0.125,0.1,0.125},
                     0.9008876759202695,
                     {0.7038331911018929,-1.9956858201679207e-15,
                      -0.7103652856828847},
                     {0.7103652856828847,1.5664496694148627e-16,
                      0.7038331911018929},
                     {1.2933547725534111e-15,1.0,-1.5279178547293438e-15}},
                 {cp,{-0.09599247685185187,0.10000000000000002,
                      0.15863715277777776},
                     0.9453049523584519,
                     {0.7914264862155848,5.7917520452456275e-15,
                      -0.6112643592721998},
                     {0.6112643592721997,0.0,0.7914264862155846},
                     {-4.583745970200673e-15,1.0,3.5402916030005203e-15}},
                 {cp,{-0.07002314814814818,0.1,0.1961805555555555},
                     0.9909548496798639,
                     {0.835623850811847,-6.554947667328161e-15,
                      -0.5493020844256647},
                     {0.5493020844256647,-1.4926586908380337e-16,
                      0.835623850811847},
                     {5.5594626646642325e-15,1.0,-3.475916296645923e-15}},
                 {cp,{-0.04492187500000007,0.1,0.23632812499999992},
                     1.0383035692608034,
                     {-0.8456313850566626,3.3539462570136323e-14,
                      0.533767328156333},
                     {0.533767328156333,-1.438222111714064e-16,
                      0.8456313850566626},
                     {-2.843878978462697e-14,-1.0,...}},
                 {cp,{-0.01851851851851862,0.09999999999999999,
                      0.2777777777777776},
                     1.0874483650065028,
                     {-0.8273559558129121,-9.661628373058788e-15,
                      0.561677952550127},
                     {0.561677952550127,0.0,...},
                     {7.993605777301204e-15,...}},
                 {cp,{0.01135706018518504,0.1,0.31922743055555536},
                     1.1385426300298842,
                     {-0.7803285914066049,2.7239312162272765e-15,...},
                     {0.6253697221911083,...},
                     {...}},
                 {cp,{0.04687499999999979,0.1,0.3593749999999998},
                     1.1921462808475785,
                     {-0.7018594509076441,...},
                     {...},...},
                 {cp,{0.09020543981481452,0.1,...},
                     1.2494789426267052,{...},...},
                 {cp,{0.1435185185185181,...},1.3125165695479564,...},
                 {cp,{...},...},
                 {cp,...},
                 {...}|...],
                1.6789962282627842,
                {none,none},
                none,[],5,0},
            nil,
            {2,
             {curve,2,linear,"Linear2",
                 {array,4,10,undefined,
                     {{cv,{0.5,0.1,1.0},
                          {ctrlp,{0.0,0.0,-1.0},0.5},
                          {ctrlp,{0.0,0.0,1.0},0.5},
                          linear,
                          {1.0,1.0,0.0},
                          1.0},
                      {cv,{0.5,0.1,1.5},
                          {ctrlp,{0.0,0.0,-1.0},0.5},
                          none,corner,
                          {1.0,1.0,0.0},
                          1.0},
                      {cv,{0.5,0.1,2.0},
                          {ctrlp,{0.0,0.0,1.0},1.0},
                          {ctrlp,{0.0,0.0,-1.0},0.5},
                          corner,
                          {1.0,1.0,0.0},
                          1.0},
                      {cv,{1.0,0.1,2.0},
                          {ctrlp,
                              {0.7071067811865475,0.0,0.7071067811865475},
                              0.7071067811865476},
                          {ctrlp,{-1.0,0.0,0.0},0.5},
                          corner,
                          {1.0,1.0,0.0},
                          1.0},
                      undefined,undefined,undefined,undefined,undefined,
                      undefined}},
                 {array,3,10,undefined,
                     {{segment,0,1},
                      {segment,1,2},
                      {segment,2,3},
                      undefined,undefined,undefined,undefined,undefined,
                      undefined,undefined}},
                 6,false,true,tangent,
                 [{cp,{0.5,0.1,1.0},
                      0.0,
                      {-1.0,0.0,0.0},
                      {0.0,0.0,1.0},
                      {0.0,-1.0,0.0}},
                  {cp,{0.5,0.1,1.5},
                      0.5,
                      {-1.0,0.0,0.0},
                      {0.0,0.0,1.0},
                      {0.0,-1.0,0.0}},
                  {cp,{0.5,0.1,2.0},
                      1.0,
                      {-0.7071067811865475,0.0,0.7071067811865475},
                      {0.7071067811865475,0.0,0.7071067811865475},
                      {0.0,-1.0,0.0}},
                  {cp,{1.0,0.1,2.0},
                      1.5,
                      {0.0,0.0,1.0},
                      {1.0,0.0,0.0},
                      {0.0,-1.0,0.0}}],
                 1.5,
                 {none,none},
                 none,[],4,0},
             nil,
             {3,
              {curve,3,linear,"Linear3",
                  {array,3,10,undefined,
                      {{cv,{-1.0,0.1,1.0},
                           {ctrlp,{0.0,0.0,-1.0},0.5},
                           {ctrlp,{0.0,0.0,1.0},0.5},
                           linear,
                           {1.0,1.0,0.0},
                           1.0},
                       {cv,{-1.0,0.1,1.5},
                           {ctrlp,{0.0,0.0,-1.0},0.5},
                           none,corner,
                           {1.0,1.0,0.0},
                           1.0},
                       {cv,{-0.5,0.1,1.5},
                           {ctrlp,
                               {0.7071067811865475,0.0,0.7071067811865475},
                               0.7071067811865476},
                           {ctrlp,{-1.0,0.0,0.0},0.5},
                           corner,
                           {1.0,1.0,0.0},
                           1.0},
                       undefined,undefined,undefined,undefined,undefined,
                       undefined,undefined}},
                  {array,2,10,undefined,
                      {{segment,0,1},
                       {segment,1,2},
                       undefined,undefined,undefined,undefined,undefined,
                       undefined,undefined,undefined}},
                  6,false,true,tangent,
                  [{cp,{-1.0,0.1,1.0},
                       0.0,
                       {-1.0,0.0,0.0},
                       {0.0,0.0,1.0},
                       {0.0,-1.0,0.0}},
                   {cp,{-1.0,0.1,1.5},
                       0.5,
                       {-0.7071067811865475,0.0,0.7071067811865475},
                       {0.7071067811865475,0.0,0.7071067811865475},
                       {0.0,-1.0,0.0}},
                   {cp,{-0.5,0.1,1.5},
                       1.0,
                       {0.0,0.0,1.0},
                       {1.0,0.0,0.0},
                       {0.0,-1.0,0.0}}],
                  1.0,
                  {none,none},
                  none,[],3,0},
              nil,nil}}}},
          {0,nil},
          body,
          [{1,{1,{0,nil,nil}}},
           {2,{1,{0,nil,nil}}},
           {3,{1,{0,nil,nil}}},
           {2,{1,{0,nil,nil}}}],
          4,1,none,none,none,none,none,
          {one,{1611,963636,278027}},
          none,none,none,none,
          {{curve,body},{to_curve,linear}},
          none,none},
      [{3,
        {curve,3,linear,"Linear3",
            {array,3,10,undefined,
                {{cv,{-1.0,0.1,1.0},
                     {ctrlp,{0.0,0.0,-1.0},0.5},
                     {ctrlp,{0.0,0.0,1.0},0.5},
                     linear,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{-1.0,0.1,1.5},
                     {ctrlp,{0.0,0.0,-1.0},0.5},
                     none,corner,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{-0.5,0.1,1.5},
                     {ctrlp,
                         {0.7071067811865475,0.0,0.7071067811865475},
                         0.7071067811865476},
                     {ctrlp,{-1.0,0.0,0.0},0.5},
                     corner,
                     {1.0,1.0,0.0},
                     1.0},
                 undefined,undefined,undefined,undefined,undefined,undefined,
                 undefined}},
            {array,2,10,undefined,
                {{segment,0,1},
                 {segment,1,2},
                 undefined,undefined,undefined,undefined,undefined,undefined,
                 undefined,undefined}},
            6,false,true,tangent,
            [{cp,{-1.0,0.1,1.0},
                 0.0,
                 {-1.0,0.0,0.0},
                 {0.0,0.0,1.0},
                 {0.0,-1.0,0.0}},
             {cp,{-1.0,0.1,1.5},
                 0.5,
                 {-0.7071067811865475,0.0,0.7071067811865475},
                 {0.7071067811865475,0.0,0.7071067811865475},
                 {0.0,-1.0,0.0}},
             {cp,{-0.5,0.1,1.5},
                 1.0,
                 {0.0,0.0,1.0},
                 {1.0,0.0,0.0},
                 {0.0,-1.0,0.0}}],
            1.0,
            {none,none},
            none,[],3,0}},
       {2,
        {curve,2,linear,"Linear2",
            {array,4,10,undefined,
                {{cv,{0.5,0.1,1.0},
                     {ctrlp,{0.0,0.0,-1.0},0.5},
                     {ctrlp,{0.0,0.0,1.0},0.5},
                     linear,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{0.5,0.1,1.5},
                     {ctrlp,{0.0,0.0,-1.0},0.5},
                     none,corner,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{0.5,0.1,2.0},
                     {ctrlp,{0.0,0.0,1.0},1.0},
                     {ctrlp,{0.0,0.0,-1.0},0.5},
                     corner,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{1.0,0.1,2.0},
                     {ctrlp,
                         {0.7071067811865475,0.0,0.7071067811865475},
                         0.7071067811865476},
                     {ctrlp,{-1.0,0.0,0.0},0.5},
                     corner,
                     {1.0,1.0,0.0},
                     1.0},
                 undefined,undefined,undefined,undefined,undefined,undefined}},
            {array,3,10,undefined,
                {{segment,0,1},
                 {segment,1,2},
                 {segment,2,3},
                 undefined,undefined,undefined,undefined,undefined,undefined,
                 undefined}},
            6,false,true,tangent,
            [{cp,{0.5,0.1,1.0},
                 0.0,
                 {-1.0,0.0,0.0},
                 {0.0,0.0,1.0},
                 {0.0,-1.0,0.0}},
             {cp,{0.5,0.1,1.5},
                 0.5,
                 {-1.0,0.0,0.0},
                 {0.0,0.0,1.0},
                 {0.0,-1.0,0.0}},
             {cp,{0.5,0.1,2.0},
                 1.0,
                 {-0.7071067811865475,0.0,0.7071067811865475},
                 {0.7071067811865475,0.0,0.7071067811865475},
                 {0.0,-1.0,0.0}},
             {cp,{1.0,0.1,2.0},
                 1.5,
                 {0.0,0.0,1.0},
                 {1.0,0.0,0.0},
                 {0.0,-1.0,0.0}}],
            1.5,
            {none,none},
            none,[],4,0}},
       {1,
        {curve,1,linear,"Linear1",
            {array,5,10,undefined,
                {{cv,{-1.0,0.1,0.0},
                     {ctrlp,{-1.0,0.0,0.0},0.5},
                     {ctrlp,{1.0,0.0,0.0},0.5},
                     linear,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{-0.5,0.1,0.0},
                     {ctrlp,{-1.0,0.0,0.0},0.5},
                     none,corner,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{0.0,0.1,0.0},
                     {ctrlp,{1.0,0.0,0.0},1.0},
                     {ctrlp,{-1.0,0.0,0.0},0.5},
                     corner,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{0.0,0.1,0.5},
                     {ctrlp,
                         {0.7071067811865475,0.0,0.7071067811865475},
                         0.7071067811865476},
                     {ctrlp,{0.0,0.0,-1.0},0.5},
                     corner,
                     {1.0,1.0,0.0},
                     1.0},
                 {cv,{0.5,0.1,0.5},
                     {ctrlp,
                         {0.7071067811865475,0.0,0.7071067811865475},
                         0.7071067811865476},
                     {ctrlp,{-1.0,0.0,0.0},0.5},
                     corner,
                     {1.0,1.0,0.0},
                     1.0},
                 undefined,undefined,undefined,undefined,undefined}},
            {array,4,10,undefined,
                {{segment,0,1},
                 {segment,1,2},
                 {segment,2,3},
                 {segment,3,4},
                 undefined,undefined,undefined,undefined,undefined,undefined}},
            6,false,true,tangent,
            [{cp,{-1.0,0.1,0.0},
                 0.0,
                 {0.0,0.0,-1.0},
                 {1.0,0.0,0.0},
                 {0.0,1.0,0.0}},
             {cp,{-0.5,0.1,0.0},
                 0.5,
                 {0.0,0.0,-1.0},
                 {1.0,0.0,0.0},
                 {0.0,1.0,0.0}},
             {cp,{0.0,0.1,0.0},
                 1.0,
                 {0.7071067811865475,0.0,-0.7071067811865475},
                 {0.7071067811865475,0.0,0.7071067811865475},
                 {0.0,1.0,0.0}},
             {cp,{0.0,0.1,0.5},
                 1.5,
                 {0.7071067811865474,0.0,-0.7071067811865474},
                 {0.7071067811865475,0.0,0.7071067811865475},
                 {0.0,1.0,0.0}},
             {cp,{0.5,0.1,0.5},
                 2.0,
                 {0.0,0.0,1.0},
                 {1.0,0.0,0.0},
                 {0.0,-1.0,0.0}}],
            2.0,
            {none,none},
            none,[],5,0}}]],
     [{file,"curve_sel.erl"},{line,512}]},
{curve_sel,map,2,[{file,"curve_sel.erl"},{line,119}]},
{curve_cmds,convert_curve,2,[{file,"curve_cmds.erl"},{line,1072}]},
{wpc_curves,raw_command,4,[{file,"wpc_curves.erl"},{line,867}]},
{wings_wm,handle_event,3,[{file,"wings_wm.erl"},{line,1030}]},
{wings_wm,send_event,2,[{file,"wings_wm.erl"},{line,996}]},
{wings_wm,do_dispatch,2,[{file,"wings_wm.erl"},{line,888}]},
{wings_wm,dispatch_event,1,[{file,"wings_wm.erl"},{line,797}]},
{wings_wm,get_and_dispatch,0,[{file,"wings_wm.erl"},{line,683}]},
{wings,init_part2,3,[{file,"wings.erl"},{line,108}]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,249}]}]
Oh boy!

Quote:4. Wings3d Crash(curve plugin geometry window is missing)
That's why I use a separated Geometry window for Curve Tools. Smile

I can't reproduce the problem.
In fact, by analysing the log the #cst{} shows me there were a repeated object Id in the selection property:
Code:
...
          body,
          [{1,{1,{0,nil,nil}}},
           {2,{1,{0,nil,nil}}},
           {3,{1,{0,nil,nil}}},
           {2,{1,{0,nil,nil}}}],  <<====
         ...

That should not happen. So, I suspect you may have had used the Undo option in some point of the scene life before the crash. Rolleyes
Since Wings3D is managing the Undo/Redo and there is not explicit way to know when that just happened I do my best to keep the both states synchronised.

In this particular case I'm doing a workaround to prevent it to happen again.

---
No update yet. I just noticed sometimes the TNB vectors for linear curve is not correct. Undecided
micheus,Thanks for checked to my report.
Yes,it is.
The entire application does not crash, so we can rescue the data of working on. Smile

And,I was looking for a simple condition to reduce the error log size.
I tried this process by some times for inspection,but some cases that didn't occured the bug. Sad
I will report if a new clue would found.
--------
tkbd
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13
Reference URL's