boundary_vertices — 3D mesh_process op

• Data kinds: mesh → indices

• Call: import fullseye as fs; fs.ledger.boundary_vertices(mesh) -> 'np.ndarray' (implementation को सीधे call करना हो तो import mesh_props; mesh_props.boundary_vertices(mesh) -> 'np.ndarray', registry से लेना हो तो ops3d.get("boundary_vertices"))

उपयोग

खुले किनारों (boundary) पर स्थित vertices के index → (K,)।

undirected edges में से ठीक 1 face द्वारा ही इस्तेमाल होने वाले edges (boundary edges) के endpoints इकट्ठा करके लौटाता है। closed manifold के लिए यह खाली array होता है —— यानी len(boundary_vertices(mesh)) == 0 watertightness (watertight) की जाँच बन जाता है। hole filling, volume calculation और curvature, सभी का अर्थ boundary होने या न होने से बदलता है, इसलिए पहले यहाँ देखें।

Args:

mesh: (vertices (N,3), faces (M,3)) का tuple।

Returns:

ascending क्रम में, बिना duplicates का (K,) int64। boundary न हो तो shape == (0,)।

Raises:

ValueError: जब mesh (vertices, faces) के 2 elements न हो, shape अमान्य हो,

coordinates non-finite हों, index non-integer या सीमा से बाहर हो, या mesh खाली हो।

सीमा (honest): लौटता है vertices का set, किनारे का loop (traversal order में) नहीं। कई holes होने पर भी सब 1 array में मिल जाता है, इसलिए अगर हर hole अलग चाहिए तो connected components खुद trace करने होंगे (loop extraction का op अभी नहीं है)। 3 या अधिक faces द्वारा साझा किए गए non-manifold edges यहाँ नहीं आते (mesh_edge_stats का non_manifold_edges देखें)।

पृष्ठभूमि guides (इस op के पीछे की physics और conventions)

• blender_interop — Blender के साथ उपयोग — shape बनाएँ, fullseye से मापें (सावधानियाँ: axes, units, ground truth)

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• mesh_decimate — py -3.11 examples_3d/mesh_decimate.py

• mesh_props — py -3.11 examples_3d/mesh_props.py

वे अगले ops जिनसे type जुड़ता है (indices को input के रूप में लेते हैं)

fuse_to_voxel

इसी category के (mesh_process)

laplacian_smooth · taubin_smooth · decimate_qem · face_normals · vertex_normals · mesh_area · vertex_curvature · face_areas


*Provenance: mesh_props.py — 3D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.