r36882
| file changeset diff or repo changeset diff
| igor2 | 2024-04-10T13:27:40.933569Z
| [gtk4] -Cleanup: warning on incompatible ptr types on gtkc_bind_win_destroy(): first arg is always cast to G_OBJECT so it can accept any widget type; removes a warning
|
M /trunk/src/librnd/plugins/lib_gtk4_common/compat.h
|
|
r36881
| file changeset diff or repo changeset diff
| igor2 | 2024-04-10T13:21:03.469262Z
| [polybool] -Cleanup: suppress warning on intentionally unused result
|
M /trunk/src/librnd/polybool/pa_segment.c
|
|
|
r36879
| file changeset diff or repo changeset diff
| igor2 | 2024-04-10T13:19:01.508306Z
| [polybool] -Cleanup: remove unused vars
|
M /trunk/src/librnd/polybool/pa_self_isc_pl.c
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_collect.c
|
|
|
r36877
| file changeset diff or repo changeset diff
| igor2 | 2024-04-10T13:14:26.252170Z
| [polybool] -Cleanup: bignum const correctness
|
M /trunk/src/librnd/polybool/big_coord.h
M /trunk/src/librnd/polybool/big_coord_ang.c
|
|
|
|
|
|
r36863
| file changeset diff or repo changeset diff
| igor2 | 2024-04-09T03:00:34.467895Z
| [lesstif] -Fix: missing cast: X API too old to be const-correct
|
M /trunk/src/librnd/plugins/hid_lesstif/main.c
|
|
r36862
| file changeset diff or repo changeset diff
| igor2 | 2024-04-09T02:59:26.878172Z
| [lesstif] -Fix: r34636 (adding user data ptr to config change callbacks) missed a function ptr type passed in argument
|
M /trunk/src/librnd/plugins/hid_lesstif/main.c
|
|
r36861
| file changeset diff or repo changeset diff
| igor2 | 2024-04-09T02:51:57.938172Z
| [hid_lesstif] -Fix: passed the wrong pixmap ID to xrender (when xrender is enabled and present)
|
M /trunk/src/librnd/plugins/hid_lesstif/main.c
|
|
|
r36851
| file changeset diff or repo changeset diff
| igor2 | 2024-04-03T04:07:46.902522Z
| [build] -Fix: make clean shall remove alternative API objs (old font and new polybool)
|
M /trunk/src/Makefile.in
|
|
|
r36849
| file changeset diff or repo changeset diff
| igor2 | 2024-04-02T05:12:22.887793Z
| [hid_lesstif] -Fix: implicit declarations
|
M /trunk/src/librnd/plugins/hid_lesstif/dialogs.h
M /trunk/src/Makefile.dep
M /trunk/src/librnd/plugins/hid_lesstif/main.c
|
|
r36847
| file changeset diff or repo changeset diff
| igor2 | 2024-03-28T06:48:11.502951Z
| [polybool] -Add: dicer: comment to explain why rnd_pline_solid_clip_box_emit() can set pl->next to NULL temporarily
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36846
| file changeset diff or repo changeset diff
| igor2 | 2024-03-28T06:35:54.699915Z
| [polybool] -Fix: dicer: rnd_pline_solid_clip_box_emit() is more careful about making the temporary poly area valid
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36845
| file changeset diff or repo changeset diff
| igor2 | 2024-03-28T06:34:27.005938Z
| [polybool] -Add: dicer: assert() on the compat no-hole dicer emitting only positive plines
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
|
r36842
| file changeset diff or repo changeset diff
| igor2 | 2024-03-28T04:08:10.113203Z
| [polybool] -Add: dicer: rnd_pline_solid_clip_box_emit() for cheap render of already hole-free-diced polygons
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36841
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T14:35:15.220588Z
| [polybool] -Fix: dicer: wrong termination of height-decrease loop when multiple holes have the same right side x coord
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36837
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T14:10:43.673165Z
| [polybool] -Add: extra sanity check to avoid infinite loop in cut optimizer
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36836
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T13:47:18.751613Z
| [polybool] -Fix: dicer corner case: if input has no holes, don't attempt to do any cut
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36833
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T10:58:39.371566Z
| [polybool] -Fix: dicer: potential indexing out of bound while sorting cuts in the slicer
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36832
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T10:56:25.919882Z
| [polybool] -Fix: dicer: slicer ignores holes that are outside of the clip area in y direction
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36830
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T10:45:10.163194Z
| [polybool] -Cleanup: dicer: make debug prints configurable
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_debug.c
M /trunk/src/librnd/polybool/pa_config.h
|
|
|
r36828
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T10:36:59.010454Z
| [polybool] -Fix: dicer: various typos and condition bugs that made the cut sorter fall into infinite loop
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36825
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T10:09:10.224460Z
| [polybool] -Fix: make it clear that the original no hole dicer passes on polyline ownership to the emit() callee (and make the new implementation do that too)
|
M /trunk/src/librnd/polybool/polygon1_gen.h
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36824
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T09:35:10.002520Z
| [polybool] -Fix: don't use the compatibility API for internal calls
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36822
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T07:35:38.130058Z
| [polybool] -Add: dicer: implement the compatibility layer [polybool] -Add: make new vs. old dicer configurable
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/polygon1_gen.c
M /trunk/src/librnd/polybool/pa_config.h
|
|
r36821
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T06:57:01.007655Z
| [polybool] -Add: dicer: publish the new API rnd_polyarea_slice_noholes()
|
M /trunk/src/librnd/polybool/pa_dicer.h
|
|
|
r36819
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T04:51:15.360878Z
| [polybool] -Add: dicer: the slicer API should include an xmin/xmax coord pair and ignore holes outside of that region and make sure all cuts fall inside too [polybool] -Cleanup: dicer: slicer internal API should have a proper context struct
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36816
| file changeset diff or repo changeset diff
| igor2 | 2024-03-27T04:06:40.855451Z
| [polybool] -Add: dicer: implement the code that figures "optimal" slicing coords
|
M /trunk/src/librnd/polybool/polyarea.h
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36815
| file changeset diff or repo changeset diff
| igor2 | 2024-03-26T07:18:08.537805Z
| [polybool] -Add: dicer: set up infra and sorting for the algo that determines cut lines
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36814
| file changeset diff or repo changeset diff
| igor2 | 2024-03-26T04:32:05.969578Z
| [polybool] -Add: comment to explain isc ordering (why pointer values are compared in the sort function callback for qsort)
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36812
| file changeset diff or repo changeset diff
| igor2 | 2024-03-26T04:02:53.435749Z
| [polybool] -Add: dicer: more informative printout in isc sort debug
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36810
| file changeset diff or repo changeset diff
| igor2 | 2024-03-25T15:57:47.135616Z
| [polybool] -Fix: dicer: detect by incoming-outgoing angles if a polyline at an edg is taking the wrong turn (test case: clip26*)
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36808
| file changeset diff or repo changeset diff
| igor2 | 2024-03-25T15:18:16.681199Z
| [polybool] -Add: big coord helper functionfor angles: gt()
|
M /trunk/src/librnd/polybool/big_coord.h
M /trunk/src/librnd/polybool/big_coord_ang.c
|
|
r36805
| file changeset diff or repo changeset diff
| igor2 | 2024-03-25T04:55:16.961669Z
| [polybool] -Fix: dicer: avoid collecting already collected islands in the edge-overlap-predictor (fixed clip25c)
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36799
| file changeset diff or repo changeset diff
| igor2 | 2024-03-24T06:49:28.219650Z
| [polybool] -Fix: dicer: wrong direction check on overlap on edge H2
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36794
| file changeset diff or repo changeset diff
| igor2 | 2024-03-24T04:49:01.038422Z
| [polybool] -Add: dicer: handle the only difference in the inverted case: when there is an intersection but the walk-around returns empty, the otuput should be all-filled (see test case clip21d)
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_dicer.h
|
|
r36792
| file changeset diff or repo changeset diff
| igor2 | 2024-03-24T04:15:59.524769Z
| [polybool] -Fix: dicer: always break at overlapping hole edges, following them would lead to closing the poly around a hole; fixes clip21c
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
|
r36787
| file changeset diff or repo changeset diff
| igor2 | 2024-03-23T08:17:44.055880Z
| [polybool] -Fix: dicer: make sure pline gather and edge gather terminate at the original starting point to avoid infinite loops
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36785
| file changeset diff or repo changeset diff
| igor2 | 2024-03-23T04:40:48.773027Z
| [polybool] -Fix: dicer: more robust termination of walkarounds: stop only when arrived back at the starting point to avoid the triangle-hole-problem demonstrated in test case clip20b
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36782
| file changeset diff or repo changeset diff
| igor2 | 2024-03-23T03:34:02.330050Z
| [polybool] -Fix: more robust redundancy check in pa_dic_split_seg() that doesn't miss match at any endpoint or internal temporary point of a seg
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36780
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T15:34:23.777643Z
| [polybool] -Add: dicer: implement the inverted case - so far it's the same as the normal case
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36777
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T14:59:23.195850Z
| [polybool] -Del: special case handler for exact-cover: the generic case solution in r36775 handles this properly
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36775
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T14:55:16.750407Z
| [polybool] -Fix: dicer: predictor accepts overlapping axis aligned polyline edge if it is going the same direction as the edge (that guarantees the polyline has box-internal points)
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36772
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T14:05:39.208007Z
| [polybool] -Del: dicer: walkdir, because holes need to be iterate throught ->next too, when entered sequentially
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36771
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T13:46:28.106790Z
| [polybool] -Add: dicer: debug option for dumping isc loop on frame
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_config.h
|
|
|
r36764
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T13:14:49.381375Z
| [polybool] -Fix: dicer: don't add intersections that are outside of the clipbox
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_config.h
|
|
|
r36762
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T12:36:55.618519Z
| [polybool] -Fix: dicer: don't stop collecting plines and edges after the first pair and mark their end-isc collected
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36761
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T12:21:15.418598Z
| [polybool] -Fix: dicer: pline gather: don't mark the returned isc collected so the caller can tell the difference of returning to the edge or returning to the starting point
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36760
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T12:04:27.530000Z
| [polybool] -Fix: seg isc computation went wrong because of the inserted temporary nodes - thesetemporary nodes shall be ignored and the original segment ends used
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36759
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T10:51:03.425875Z
| [polybool] -Fix: dicer: pa_dic_emit_island_predict() has to accept an edge-edge segment if it crosses the box - that is, the center point is inside the box, not on the edge
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36753
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T09:55:29.484710Z
| [polybool] -Cleanup: dicer: rewrite the internal intersection tracking data structure to have temporary nodes on every intersection instead of trying to track segments
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36751
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T07:39:33.925954Z
| [polybool] -Add: dicer: configurable module debug macro
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_debug.c
M /trunk/src/librnd/polybool/pa_config.h
|
|
|
r36748
| file changeset diff or repo changeset diff
| igor2 | 2024-03-22T04:11:39.950578Z
| [polybool] -Fix: dicer: mark both overlapping iscs collected when starting from an isc that was hitby an edge
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36741
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T14:28:42.814865Z
| [polybool] -Cleanup: dicer: assert() and if() protect isc->seg accesses: box corners will have this ptr NULL
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36739
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T14:11:09.706825Z
| [polybool] -Cleanup: dicer: remove obsolete asserts (redundancy is handled on the output, redundant iscs are kept for topology)
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36738
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T14:08:37.289833Z
| [polybool] -Fix: dicer: null ptr deref when there's no prev point in gather
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36736
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T14:05:32.253241Z
| [polybool] -Fix: dicer: make sure redundant isc points are all marked (happens when a box edge cuts into a node)
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36735
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T13:32:35.532591Z
| [polybool] -Fix: dicer: avoid emitting redundant coords
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_dicer.h
|
|
|
|
r36728
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T10:30:51.518872Z
| [polybool] -Fix: dicer: confision on walking direction vs. relation direction
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36727
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T10:02:59.637057Z
| [polybool] -Fix: dicer: simplify the code that builds the cyclic linked list of iscs
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
|
r36723
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T09:33:00.307794Z
| [polybool] -Fix: dicer: wrong order of bbox comparisons for determining cheap-away in pline label
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
|
r36721
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T08:53:12.212432Z
| [polybool] -Add: install pa_dicer.h for testing
|
M /trunk/scconfig/Rev.h
M /trunk/scconfig/Rev.tab
M /trunk/src/Makefile.in
|
|
|
r36718
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T07:56:08.510035Z
| [polybool] -Add: dicer: link all intersctions in a cyclic list for easier walk-around; include dummy iscs for corners
|
M /trunk/src/librnd/polybool/pa_dicer.c
M /trunk/src/librnd/polybool/pa_dicer.h
|
|
|
|
r36715
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T04:39:15.355028Z
| [polybool] -Add: dicer: intersection memory managent and list reset [polybool] -Add: dicer: new API
|
M /trunk/src/librnd/polybool/pa_dicer.c
A /trunk/src/librnd/polybool/pa_dicer.h
|
|
r36714
| file changeset diff or repo changeset diff
| igor2 | 2024-03-21T03:22:07.507942Z
| [polybool] -Cleanup: dicer: rename functions to make it clear they are emitting only and not making decisions about cuts
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36713
| file changeset diff or repo changeset diff
| igor2 | 2024-03-20T18:23:00.649635Z
| [polybool] -Add: dicer: sort side iscs and prepare for walk-arounds
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36712
| file changeset diff or repo changeset diff
| igor2 | 2024-03-20T17:12:32.497680Z
| [polybool] -Add: dicer: handle the cheap cases of singe island dicing
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36711
| file changeset diff or repo changeset diff
| igor2 | 2024-03-20T16:34:10.094925Z
| [polybool] -Add: dicer: box-vs-pline first checks bounding boxes for the cheapest resolutions to bail out
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|
r36710
| file changeset diff or repo changeset diff
| igor2 | 2024-03-20T16:09:52.766659Z
| [polybool] -Add: dicer: label plines that are fully in, wrapping the box or are far away from the box
|
M /trunk/src/librnd/polybool/pa_dicer.c
|
|