src/types.cpp

changeset 539
72ad83a67165
parent 538
2f85d4d286e5
child 541
0e38beeb050a
equal deleted inserted replaced
538:2f85d4d286e5 539:72ad83a67165
57 // ============================================================================= 57 // =============================================================================
58 // ----------------------------------------------------------------------------- 58 // -----------------------------------------------------------------------------
59 vertex vertex::midpoint (const vertex& other) 59 vertex vertex::midpoint (const vertex& other)
60 { vertex mid; 60 { vertex mid;
61 61
62 for (const Axis ax : g_Axes) 62 for (const Axis ax : g_Axes)
63 mid[ax] = (m_coords[ax] + other[ax]) / 2; 63 mid[ax] = (m_coords[ax] + other[ax]) / 2;
64 64
65 return mid; 65 return mid;
66 } 66 }
67 67
511 { reset(); 511 { reset();
512 512
513 if (!LDFile::current()) 513 if (!LDFile::current())
514 return; 514 return;
515 515
516 for (LDObject * obj : LDFile::current()->objects()) 516 for (LDObject* obj : LDFile::current()->getObjects())
517 calcObject (obj); 517 calcObject (obj);
518 } 518 }
519 519
520 // ============================================================================= 520 // =============================================================================
521 // ----------------------------------------------------------------------------- 521 // -----------------------------------------------------------------------------
561 561
562 // ============================================================================= 562 // =============================================================================
563 // ----------------------------------------------------------------------------- 563 // -----------------------------------------------------------------------------
564 void LDBoundingBox::calcVertex (const vertex& v) 564 void LDBoundingBox::calcVertex (const vertex& v)
565 { for (const Axis ax : g_Axes) 565 { for (const Axis ax : g_Axes)
566 { if (v[ax] < m_v0[ax]) 566 { if (v[ax] < m_Vertex0[ax])
567 m_v0[ax] = v[ax]; 567 m_Vertex0[ax] = v[ax];
568 568
569 if (v[ax] > m_v1[ax]) 569 if (v[ax] > m_Vertex1[ax])
570 m_v1[ax] = v[ax]; 570 m_Vertex1[ax] = v[ax];
571 } 571 }
572 572
573 m_empty = false; 573 setEmpty (false);
574 } 574 }
575 575
576 // ============================================================================= 576 // =============================================================================
577 // ----------------------------------------------------------------------------- 577 // -----------------------------------------------------------------------------
578 void LDBoundingBox::reset() 578 void LDBoundingBox::reset()
579 { m_v0[X] = m_v0[Y] = m_v0[Z] = 0x7FFFFFFF; 579 { m_Vertex0[X] = m_Vertex0[Y] = m_Vertex0[Z] = 0x7FFFFFFF;
580 m_v1[X] = m_v1[Y] = m_v1[Z] = 0xFFFFFFFF; 580 m_Vertex1[X] = m_Vertex1[Y] = m_Vertex1[Z] = 0xFFFFFFFF;
581 581
582 m_empty = true; 582 setEmpty (true);
583 } 583 }
584 584
585 // ============================================================================= 585 // =============================================================================
586 // ----------------------------------------------------------------------------- 586 // -----------------------------------------------------------------------------
587 double LDBoundingBox::size() const 587 double LDBoundingBox::size() const
588 { double xscale = (m_v0[X] - m_v1[X]); 588 { double xscale = (m_Vertex0[X] - m_Vertex1[X]);
589 double yscale = (m_v0[Y] - m_v1[Y]); 589 double yscale = (m_Vertex0[Y] - m_Vertex1[Y]);
590 double zscale = (m_v0[Z] - m_v1[Z]); 590 double zscale = (m_Vertex0[Z] - m_Vertex1[Z]);
591 double size = zscale; 591 double size = zscale;
592 592
593 if (xscale > yscale) 593 if (xscale > yscale)
594 { if (xscale > zscale) 594 { if (xscale > zscale)
595 size = xscale; 595 size = xscale;
605 605
606 // ============================================================================= 606 // =============================================================================
607 // ----------------------------------------------------------------------------- 607 // -----------------------------------------------------------------------------
608 vertex LDBoundingBox::center() const 608 vertex LDBoundingBox::center() const
609 { return vertex ( 609 { return vertex (
610 (m_v0[X] + m_v1[X]) / 2, 610 (m_Vertex0[X] + m_Vertex1[X]) / 2,
611 (m_v0[Y] + m_v1[Y]) / 2, 611 (m_Vertex0[Y] + m_Vertex1[Y]) / 2,
612 (m_v0[Z] + m_v1[Z]) / 2); 612 (m_Vertex0[Z] + m_Vertex1[Z]) / 2);
613 } 613 }

mercurial