Developing Games on Intel Graphics
If you are gaming on graphics integrated in your Intel Processor, this is the place for you! Find answers to your questions or post your issues with PC games

NURBS intersection solution

hunt_chang
Beginner
1,954 Views

Dear All,

Long time ago, I had released the information about my Bezier curves' intersection solution here, now I am happily to let you know that my NURBS intersection solution is finally completed. I hope that I will have the chance to combine my solution into the contemporary CAD/CAM and Game software in the near future.

If you'd like to know about what I have tried and what I have found about NURBS, welcome to visit my new NURBS-X site to review the detail.

Enclosed is a piece of NURBS-X sample data for your review, in which there are one quartic degree NURBS intersects with a cubic degree NURBS.

pic of NURBS intersection

Blue NURBS -- Nonuniform, degree: 4,  Ring-mode: ON;
  Control points:  8;
  P00(225.00, 273.00),  P01(244.00, 352.00),  P02(516.00, 299.00),  P03(472.00, 205.00),  P04(225.00, 273.00),  P05(244.00, 352.00),
  P06(516.00, 299.00),  P07(472.00, 205.00)
  Knots vector:  13;
  {    0.00,    0.00,    7.00,   16.00,   16.00,   17.00,   24.00,   33.00,   33.00,   34.00,   41.00,   50.00,   50.00 }
  Control points of poly-Bezier:  17;
  VALID   (373.488235294117660, 326.282352941176500),  (388.000000000000000, 323.941176470588230),  (404.000000000000000, 320.823529411764700),  (417.676470588235300, 317.404411764705860),
  VALID   (429.232050173010410, 313.791576557093440),  (510.121107266435960, 288.501730103806270),  (487.086505190311410, 253.719723183391010),  (429.633217993079600, 246.404844290657420),
  VALID   (373.784034385813130, 255.407182634083030),  (301.977941176470610, 266.981617647058780),  (232.823529411764700, 305.529411764705860),  (242.882352941176490, 347.352941176470610),
  VALID   (373.488235294117660, 326.282352941176500),  (373.488235294117660, 326.282352941176500),  (373.488235294117660, 326.282352941176500),  (373.488235294117660, 326.282352941176500),
   (373.488235294117660, 326.282352941176500)

Red NURBS -- Nonuniform, degree: 3,  Ring-mode: ON;
  Control points:  7;
  P00(373.00, 376.00),  P01(245.00, 298.00),  P02(352.00, 191.00),  P03(548.00, 284.00),  P04(373.00, 376.00),  P05(245.00, 298.00),
  P06(352.00, 191.00)
  Knots vector:  11;
  {    0.00,    7.00,   16.00,   20.00,   26.00,   32.00,   41.00,   45.00,   51.00,   57.00,   66.00 }
  Control points of poly-Bezier:  13;
  VALID   (279.952631578947380, 302.078947368421040),  (271.750000000000000, 271.250000000000000),  (311.875000000000000, 231.125000000000000),
  VALID   (359.937500000000000, 224.348214285714280),  (408.000000000000000, 217.571428571428580),  (464.000000000000000, 244.142857142857110),
  VALID   (475.494736842105230, 271.706766917293240),  (492.736842105263180, 313.052631578947400),  (409.842105263157860, 356.631578947368440),
  VALID   (342.360323886639660, 344.461538461538510),  (312.368421052631560, 339.052631578947400),  (285.421052631578960, 322.631578947368440),
   (279.952631578947380, 302.078947368421040)

The intersection point(s) of above two NURBS:  4;
  X00(477.661930373181010, 280.179763324569540),  X01(475.725826637142290, 272.276194239744770),  X02(278.882394153096360, 293.792684483944300),
  X03(305.249610243883690, 331.006991172625930)
  The t value(s) of X point(s) of Blue NURBS:  4;
  t00 =  19.222165964276165,  t01 =  19.813464310758949,  t02 =  27.684827002549188,
  t03 =  31.485753231881930
  The t value(s) of X point(s) of Red NURBS:  4;
  t00 =  32.613862742507173,  t01 =  32.041307043354557,  t02 =  20.525542414101757,
  t03 =  42.808571378651095

Enjoy your surfing,

Hunt Chang

 

 

0 Kudos
2 Replies
hunt_chang
Beginner
1,954 Views

Oops,

I did not noticed the picture link was not work. Please check the pictures at here and here.

Thanks for your reading,

Hunt Chang

0 Kudos
Bernard
Valued Contributor I
1,954 Views

Thanks for posting it, very interesting.

0 Kudos
Reply