Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Add sanity checking logic to GeoData | Dan Goodliffe | 4 days |
| | |||
* | Don't cut internal boundaries | Dan Goodliffe | 5 days |
| | | | | | Existing terrain contains enough nodes, assumes input surface is flat. For non-flat requires, submit several surfaces. | ||
* | Don't make arbitrary changes to mesh for triangle boundaries | Dan Goodliffe | 5 days |
| | | | | | | | | | | Making these arbitrary changes can lead to inverted adjacent faces, instead just: a) use the near node where it is, or b) create the edge split along its length without lateral movement Same principal as previous commit, addresses issues where tracing would fail seemingly at random and throws on error now. | ||
* | Don't make arbitrary changes to mesh for triangle corners | Dan Goodliffe | 5 days |
| | | | | | | | | | | Making these arbitrary changes can lead to inverted adjacent faces, instead just: a) use the near node where it is, or b) create the edge split along its length without lateral movement Removes the check that these are already used and/or boundaries as they're not being changed now anyway. | ||
* | Reuse close edges when adding new vertices for surface | Dan Goodliffe | 8 days |
| | |||
* | Remove GeoData::difference for points, use global version | Dan Goodliffe | 2024-12-01 |
| | |||
* | Update new/moved vertex normals | Dan Goodliffe | 2024-11-27 |
| | |||
* | Surface walk to set face surface property | Dan Goodliffe | 2024-11-24 |
| | |||
* | Pass setHeights options as a struct with defaults | Dan Goodliffe | 2024-11-23 |
| | |||
* | Remove split face specialisation | Dan Goodliffe | 2024-11-23 |
| | |||
* | Share code between boundary and strip edge node reuse | Dan Goodliffe | 2024-11-23 |
| | |||
* | Reuse existing vertices when processing strip vertices | Dan Goodliffe | 2024-11-16 |
| | |||
* | Reuse existing vertices when processing boundary parts | Dan Goodliffe | 2024-11-14 |
| | |||
* | Fix do bounary part iteration | Dan Goodliffe | 2024-11-14 |
| | | | | Exit when current vertex is adjacent to the end | ||
* | Reverse order of last boundary part addition | Dan Goodliffe | 2024-11-14 |
| | | | | It's the manual last end, shame it has to be weird. | ||
* | First version rewrite of terrain deformation, much still to do | Dan Goodliffe | 2024-11-13 |
| | |||
* | Further template maths functions | Dan Goodliffe | 2024-10-21 |
| | |||
* | Remove abuse of std::adjacent_find from geoData | Dan Goodliffe | 2024-05-25 |
| | |||
* | Simplify new face split loop | Dan Goodliffe | 2024-04-26 |
| | |||
* | Set the face surface type when setting height | Dan Goodliffe | 2024-04-26 |
| | |||
* | Don't return newly created faces from split | Dan Goodliffe | 2024-04-26 |
| | | | | | It's not as simple as it looks as adjacent faces may also be split, making this a bit misleading. | ||
* | Add GeoData face property for surface type | Dan Goodliffe | 2024-04-08 |
| | | | | Arbitrary int type for now. | ||
* | Fix creating a flat terrain of exactly the requested size | Dan Goodliffe | 2024-04-07 |
| | | | | Which must be a size of multiples of GRID_SIZE, 10m | ||
* | Don't garbage collect the terrain mesh | Dan Goodliffe | 2024-04-04 |
| | | | | Use skipping iterators instead, GC would be implicit during save/load | ||
* | Update normals only as required | Dan Goodliffe | 2024-04-04 |
| | |||
* | Boundary edge and one time split with repeated 4-way split of large faces | Dan Goodliffe | 2024-04-01 |
| | |||
* | Replace face 4-way split | Dan Goodliffe | 2024-04-01 |
| | | | | Fixes integer rounding issue and returns the new face handles | ||
* | Factor out some helper lambdas into members | Dan Goodliffe | 2024-03-31 |
| | |||
* | Split long boundary edges | Dan Goodliffe | 2024-03-31 |
| | |||
* | Split faces with two large boundary sides | Dan Goodliffe | 2024-03-31 |
| | |||
* | Don't save original face handles | Dan Goodliffe | 2024-03-31 |
| | | | | Not required, likely to change anyway. | ||
* | Handle almost straight edges with a simple bisect | Dan Goodliffe | 2024-03-30 |
| | |||
* | Dedupe addition of extrusions | Dan Goodliffe | 2024-03-23 |
| | |||
* | Handle and test concave surface boundaries | Dan Goodliffe | 2024-03-23 |
| | |||
* | Create extents purely from corner arcs | Dan Goodliffe | 2024-03-23 |
| | |||
* | Remove boundary collection | Dan Goodliffe | 2024-03-23 |
| | | | | We can simply walk the boundary as required | ||
* | Extract vector_normal helper into lib | Dan Goodliffe | 2024-03-23 |
| | |||
* | Add helper constructors to Arc | Dan Goodliffe | 2024-03-21 |
| | | | | | | * Two angles, wraps logic ensuring b after a * Two vector directions * Centre and two endpoints, in at least 2 dimensions, uses .xy() | ||
* | Simplify creation of planes | Dan Goodliffe | 2024-03-18 |
| | | | | Uses limit directions instead of fake triangles | ||
* | maybe_unused return from cut point search | Dan Goodliffe | 2024-03-18 |
| | | | | Only asserted | ||
* | Switch to using planes instead of triangles for deformaton cut | Dan Goodliffe | 2024-03-18 |
| | | | | | Removes the hacky need for going a bit too far to account for rounding errors... which didn't really work anyway. | ||
* | Fix generation of halfedge extrusion extents | Dan Goodliffe | 2024-03-14 |
| | |||
* | Simplify cut loop and termination case search | Dan Goodliffe | 2024-03-14 |
| | | | | Looks for a halfedge from current vertex to end vertex. | ||
* | Rewrite most of setHeights | Dan Goodliffe | 2024-03-08 |
| | | | | | Accounts for sensible corners and fixes quite a few bugs and edge cases... introduces a few more, is still a bit glitchy in places | ||
* | Bail out early if the input does not define an area | Dan Goodliffe | 2024-03-08 |
| | |||
* | Remove the nosplit list | Dan Goodliffe | 2024-02-24 |
| | | | | Not required now we don't randomly wonder into the new edges range | ||
* | Psycho-rebased branch deform-terrain on top of main | Dan Goodliffe | 2024-02-24 |
|\ | |||
| * | First cut of terrain deformation | Dan Goodliffe | 2024-02-22 |
| | | | | | | | | | | | | | | | | | | | | This "works" for some definition of works... But it's flawed in many ways, not least the following: * It's glitchy for no obvious reason * It's unreliable; fails if you tweak the parameters * The sides of the modified area are triangulated in the dumbest possible fashion, which results in ill-formed polygons * Probably other things, but... It works, remember... | ||
| * | Include face handle in intersectRay result | Dan Goodliffe | 2024-02-13 |
| | | |||
| * | Add helpers for testing for triangle overlap/containedness | Dan Goodliffe | 2024-02-12 |
| | |