载入中...
搜索中...
未找到
UrbanCrossField.cpp
浏览该文件的文档.
177Polyline traceStreamline(const CrossField& field, const Polygon& poly, const Vec2& seed, const Vec2& initialDir,
232std::vector<SplitCandidate> generateSplitCandidates(const Polygon& poly, int maxCandidates, double minHalfArea) {
constexpr HexDirection next(HexDirection d) noexcept
The next direction clockwise (NW wraps to NE).
Definition HexMetrics.h:76
Definition UrbanCrossField.cpp:12
bool validSplit(const Polygon &poly, const Polyline &split, double minHalfArea, Polygon *outA, Polygon *outB, double *fracA)
Validity of a candidate split: both halves simple, positive area, inside the original.
Definition UrbanGeometry.cpp:425
std::vector< Vec2 > Polyline
Open polyline (e.g. a streamline candidate or a street centerline).
Definition UrbanTypes.h:57
bool pointInPolygon(const Vec2 &p, const Polygon &poly)
Point-in-polygon test (ray casting; boundary counts as inside).
Definition UrbanGeometry.cpp:112
std::vector< Vec2 > Polygon
Closed polygon ring, stored CCW, without repeating the first point.
Definition UrbanTypes.h:55
double perimeter(const Polygon &poly)
Perimeter length of a closed ring.
Definition UrbanGeometry.cpp:72
std::vector< BoundarySample > sampleBoundary(const Polygon &poly, int count)
Uniformly sample the polygon boundary (approx. count samples, at least 8). Samples are ordered along ...
Definition UrbanGeometry.cpp:247
std::vector< SplitCandidate > generateSplitCandidates(const Polygon &poly, int maxCandidates, double minHalfArea)
Generate candidate streamlines for binary partitioning of poly.
Definition UrbanCrossField.cpp:232
Vec2 closestPointOnBoundary(const Polygon &poly, const Vec2 &p, BoundaryPosition *pos)
Closest point on the polygon boundary; writes edge index + t in [0,1].
Definition UrbanGeometry.cpp:189
const EditorValue * field(const EditorValue &value, const char *name)
Definition RoadNetworkEditTarget.cpp:15
A boundary sample used for field constraints / candidate seeds.
Definition UrbanTypes.h:158
Candidate splitting lines for a parcel (paper Section 4.1). Each candidate is a polyline from one bou...
Definition UrbanCrossField.h:15
Minimal 2D vector used by the urban layout algorithms (paper coordinates).
Definition UrbanTypes.h:15