MCPcopy Create free account
hub / github.com/JeremyBYU/polylidar / down_sample_normals

Function down_sample_normals

examples/python/basic_mesh.py:41–60  ·  view source on GitHub ↗

Return dowsampled normals Args: triangle_normals (np.ndarray): Triangle Normals down_sample_fraction (float, optional): Fraction to downsample. Defaults to 0.12. min_samples (int, optional): Minimum number of samples. Defaults to 10000. flip_normals (bool, option

(triangle_normals, down_sample_fraction=0.12, min_samples=10000, flip_normals=False, **kwargs)

Source from the content-addressed store, hash-verified

39
40
41def down_sample_normals(triangle_normals, down_sample_fraction=0.12, min_samples=10000, flip_normals=False, **kwargs):
42 """Return dowsampled normals
43
44 Args:
45 triangle_normals (np.ndarray): Triangle Normals
46 down_sample_fraction (float, optional): Fraction to downsample. Defaults to 0.12.
47 min_samples (int, optional): Minimum number of samples. Defaults to 10000.
48 flip_normals (bool, optional): Reverse the normals?. Defaults to False.
49
50 Returns:
51 np.ndarray: NX3 downsampled normals
52 """
53 num_normals = triangle_normals.shape[0]
54 to_sample = int(down_sample_fraction * num_normals)
55 to_sample = max(min([num_normals, min_samples]), to_sample)
56 ds_step = int(num_normals / to_sample)
57 triangle_normals_ds = np.ascontiguousarray(triangle_normals[:num_normals:ds_step, :])
58 if flip_normals:
59 triangle_normals_ds = triangle_normals_ds * -1.0
60 return triangle_normals_ds
61
62
63def get_image_peaks(ico_chart, ga, level=2, with_o3d=False,

Callers 1

Calls 2

maxFunction · 0.85
minFunction · 0.85

Tested by

no test coverage detected