Пример #1
0
def test_get_bbox():
    cell_size = 0.1
    cell = nnps.Cell(IntPoint(0, 0, 0), cell_size=cell_size, narrays=1)
    centroid = Point()
    boxmin = Point()
    boxmax = Point()

    cell.get_centroid(centroid)
    cell.get_bounding_box(boxmin, boxmax)

    assert (abs(boxmin.x - (centroid.x - 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmin.y - (centroid.y - 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmin.z - (centroid.z - 1.5 * cell_size)) < 1e-10)

    assert (abs(boxmax.x - (centroid.x + 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmax.y - (centroid.y + 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmax.z - (centroid.z + 1.5 * cell_size)) < 1e-10)

    cell_size = 0.5
    cell = nnps.Cell(IntPoint(1, 2, 0), cell_size=cell_size, narrays=1)

    cell.get_centroid(centroid)
    cell.get_bounding_box(boxmin, boxmax)

    assert (abs(boxmin.x - (centroid.x - 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmin.y - (centroid.y - 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmin.z - (centroid.z - 1.5 * cell_size)) < 1e-10)

    assert (abs(boxmax.x - (centroid.x + 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmax.y - (centroid.y + 1.5 * cell_size)) < 1e-10)
    assert (abs(boxmax.z - (centroid.z + 1.5 * cell_size)) < 1e-10)
Пример #2
0
def test_get_centroid():
    cell = nnps.Cell(IntPoint(0, 0, 0), cell_size=0.1, narrays=1)
    centroid = Point()
    cell.get_centroid(centroid)

    assert (abs(centroid.x - 0.05) < 1e-10)
    assert (abs(centroid.y - 0.05) < 1e-10)
    assert (abs(centroid.z - 0.05) < 1e-10)

    cell = nnps.Cell(IntPoint(1, 2, 3), cell_size=0.5, narrays=1)
    cell.get_centroid(centroid)

    assert (abs(centroid.x - 0.75) < 1e-10)
    assert (abs(centroid.y - 1.25) < 1e-10)
    assert (abs(centroid.z - 1.75) < 1e-10)