thi.ng/geom

computational geometry with Clojure

thi.ng.geom.rect

Rectangular shape generation

#thi.ng.geom.types.Rect2
{:p [0.0 0.0] :size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 11.049230769230768]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 22.098461538461528]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 33.14769230769231]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 44.19692307692308]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 55.24615384615384]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 66.2953846153846]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 77.3446153846154]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 88.39384615384616]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 99.44307692307692]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 110.49230769230768]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 121.54153846153845]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 132.5907692307692]
:size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [0.0 143.64] :size [67.5 8.286923076923076]}
#thi.ng.geom.types.Rect2
{:p [75.0 0.0] :size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 12.91307067076923]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 25.826141341538456]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 38.7392120123077]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 51.65228268307693]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 64.56535335384615]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 77.47842402461539]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 90.39149469538464]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 103.30456536615387]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 116.21763603692308]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 129.1307067076923]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 142.04377737846156]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 154.95684804923079]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [75.0 167.86991872000002]
:size [67.5 9.684803003076924]}
#thi.ng.geom.types.Rect2
{:p [150.0 0.0] :size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 14.975541366153848]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 29.95108273230769]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 44.92662409846156]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 59.9021654646154]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 74.87770683076924]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 89.85324819692309]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 104.82878956307697]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 119.8043309292308]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 134.77987229538465]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 149.75541366153848]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 164.73095502769235]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 179.7064963938462]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [150.0 194.68203776000004]
:size [67.5 11.231656024615386]}
#thi.ng.geom.types.Rect2
{:p [225.0 0.0] :size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 17.246700110769233]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 34.49340022153846]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 51.74010033230771]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 68.98680044307694]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 86.23350055384617]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 103.48020066461541]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 120.72690077538466]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 137.9736008861539]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 155.2203009969231]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 172.46700110769234]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 189.71370121846158]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 206.96040132923085]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [225.0 224.20710144000006]
:size [67.5 12.935025083076926]}
#thi.ng.geom.types.Rect2
{:p [300.0 0.0] :size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 19.736604160000006]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 39.473208320000005]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 59.20981248000004]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 78.94641664000004]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 98.68302080000004]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 118.41962496000005]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 138.1562291200001]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 157.89283328000008]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 177.62943744000006]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 197.36604160000007]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 217.1026457600001]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 236.83924992000013]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [300.0 256.5758540800001]
:size [67.5 14.802453120000006]}
#thi.ng.geom.types.Rect2
{:p [375.0 0.0] :size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 22.455310769230778]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 44.91062153846155]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 67.36593230769236]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 89.82124307692314]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 112.2765538461539]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 134.7318646153847]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 157.1871753846155]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 179.64248615384628]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 202.09779692307703]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 224.5531076923078]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 247.0084184615386]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 269.4637292307694]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [375.0 291.91904000000017]
:size [67.5 16.841483076923087]}
#thi.ng.geom.types.Rect2
{:p [450.0 0.0] :size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 25.412877193846168]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 50.82575438769233]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 76.23863158153853]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 101.65150877538468]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 127.06438596923084]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 152.477263163077]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 177.8901403569232]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 203.30301755076937]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 228.71589474461553]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 254.12877193846168]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 279.54164913230784]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 304.95452632615405]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [450.0 330.3674035200002]
:size [67.5 19.05965789538463]}
#thi.ng.geom.types.Rect2
{:p [525.0 0.0] :size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 28.61936068923078]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 57.238721378461555]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 85.85808206769237]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 114.47744275692315]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 143.0968034461539]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 171.7161641353847]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 200.33552482461553]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 228.9548855138463]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 257.57424620307705]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 286.1936068923078]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 314.81296758153866]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 343.43232827076946]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [525.0 372.0516889600002]
:size [67.5 21.464520516923088]}
#thi.ng.geom.types.Rect2
{:p [600.0 0.0] :size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 32.08481851076925]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 64.16963702153849]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 96.25445553230779]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 128.33927404307704]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 160.42409255384626]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 192.50891106461552]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 224.59372957538483]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 256.6785480861541]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 288.76336659692333]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 320.84818510769253]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 352.93300361846184]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 385.0178221292311]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [600.0 417.10264064000035]
:size [67.5 24.063613883076943]}
#thi.ng.geom.types.Rect2
{:p [675.0 0.0] :size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 35.819307913846174]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 71.63861582769235]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 107.45792374153856]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 143.27723165538472]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 179.09653956923088]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 214.91584748307707]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 250.73515539692332]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 286.55446331076945]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 322.3737712246156]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 358.19307913846177]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 394.012387052308]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 429.8316949661542]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [675.0 465.65100288000036]
:size [67.5 26.864480935384638]}
#thi.ng.geom.types.Rect2
{:p [750.0 0.0] :size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 39.83288615384619]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 79.66577230769236]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 119.4986584615386]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 159.3315446153848]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 199.16443076923093]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 238.99731692307714]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 278.8302030769234]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 318.6630892307696]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 358.49597538461575]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 398.32886153846187]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 438.1617476923081]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 477.99463384615433]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [750.0 517.8275200000005]
:size [67.5 29.874664615384646]}
#thi.ng.geom.types.Rect2
{:p [825.0 0.0] :size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 44.13561048615389]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 88.27122097230775]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 132.40683145846168]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 176.54244194461558]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 220.67805243076944]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 264.8136629169233]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 308.94927340307726]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 353.08488388923115]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 397.220494375385]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 441.3561048615389]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 485.4917153476928]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 529.6273258338467]
:size [67.5 33.10170786461542]}
#thi.ng.geom.types.Rect2
{:p [825.0 573.7629363200006]
:size [67.5 33.10170786461542]}


Core type:
thi.ng.geom.types.Rect2

a 2d plane with a position, width, and height - specified either by coordinate points or vectors

thi.ng.geom.rect namespace

Functions
union
arguments:
[[{p :p [w h] :size} {q :p [qw qh] :size}]]
source: thi/ng/geom/rect.cljc L37
rect
arguments:
[[] [w] [p q] [x y w] [x y w h]]
source: thi/ng/geom/rect.cljc L20
left
arguments:
[[r]]
source: thi/ng/geom/rect.cljc L46
bottom
arguments:
[[r]]
source: thi/ng/geom/rect.cljc L50
top
arguments:
[[r]]
source: thi/ng/geom/rect.cljc L54
top-right
arguments:
[[r]]
source: thi/ng/geom/rect.cljc L56
bottom-left
arguments:
[[r]]
source: thi/ng/geom/rect.cljc L52
right
arguments:
[[r]]
source: thi/ng/geom/rect.cljc L48
thi.ng.geom.core implemented protocols
IBoundary
{:on thi.ng.geom.core.IBoundary
:sigs {:contains-entity? {:arglists ([_ s])
:doc nil
:name contains-entity?
:tag nil}

:contains-point? {:arglists ([_ p])
:doc nil
:name contains-point?
:tag nil}
}
}
IRotate
{:on thi.ng.geom.core.IRotate
:sigs {:rotate {:arglists ([_ t]) :doc nil :name rotate :tag nil}}}
ISample
{:on thi.ng.geom.core.ISample
:sigs {:point-at {:arglists ([_ t] [_ u v])
:doc nil
:name point-at
:tag nil}

:random-point {:arglists ([_])
:doc nil
:name random-point
:tag nil}

:random-point-inside {:arglists ([_])
:doc nil
:name random-point-inside
:tag nil}

:sample-uniform {:arglists ([_ dist include-last?])
:doc nil
:name sample-uniform
:tag nil}

:sample-with-resolution {:arglists ([_ res])
:doc nil
:name sample-with-resolution
:tag nil}
}
}
ITessellate
{:on thi.ng.geom.core.ITessellate
:sigs {:tessellate {:arglists ([_] [_ opts])
:doc nil
:name tessellate
:tag nil}
}
}
ISubdivide
{:on thi.ng.geom.core.ISubdivide
:sigs {:subdivide {:arglists ([_] [_ opts])
:doc nil
:name subdivide
:tag nil}

:subdivide-edge {:arglists ([_ a b splits])
:doc nil
:name subdivide-edge
:tag nil}

:subdivide-face {:arglists ([_ f p displace splits])
:doc nil
:name subdivide-face
:tag nil}
}
}
IBounds
{:on thi.ng.geom.core.IBounds
:sigs {:bounds {:arglists ([_])
:doc "Returns bounding rect for 2d entities or box for 3d"
:name bounds
:tag nil}

:depth {:arglists ([_])
:doc "Returns entity's extent along Z (zero for 2d)"
:name depth
:tag nil}

:height {:arglists ([_])
:doc "Returns entity's extent along Y axis"
:name height
:tag nil}

:width {:arglists ([_])
:doc "Returns entity's extent along X axis"
:name width
:tag nil}
}
}
IPolygonConvert
{:on thi.ng.geom.core.IPolygonConvert
:sigs {:as-polygon {:arglists ([_] [_ res])
:doc "Transforms current entity into a Polygon2 instance"
:name as-polygon
:tag nil}
}
}
IVertexAccess
{:on thi.ng.geom.core.IVertexAccess
:sigs {:vertices {:arglists ([_] [_ opts]) :doc nil :name vertices :tag nil}}}
ITransform
{:on thi.ng.geom.core.ITransform
:sigs {:transform {:arglists ([_ tx]) :doc nil :name transform :tag nil}}}
IGraph
{:on thi.ng.geom.core.IGraph
:sigs {:connected-components {:arglists ([_])
:doc nil
:name connected-components
:tag nil}

:cyclic? {:arglists ([_]) :doc nil :name cyclic? :tag nil}
:merge-vertices {:arglists ([_ a b])
:doc nil
:name merge-vertices
:tag nil}

:remove-vertex {:arglists ([_ v])
:doc nil
:name remove-vertex
:tag nil}

:replace-vertex {:arglists ([_ a b])
:doc nil
:name replace-vertex
:tag nil}

:vertex-neighbors {:arglists ([_ v])
:doc nil
:name vertex-neighbors
:tag nil}

:vertex-valence {:arglists ([_ v])
:doc nil
:name vertex-valence
:tag nil}
}
}
IArea
{:on thi.ng.geom.core.IArea
:sigs {:area {:arglists ([_])
:doc "Returns an entity's total surface area"
:name area
:tag nil}
}
}
IPointMap
{:on thi.ng.geom.core.IPointMap
:sigs {:map-point {:arglists ([_ p]) :doc nil :name map-point :tag nil}
:unmap-point {:arglists ([_ p]) :doc nil :name unmap-point :tag nil}}
}
IScale
{:on thi.ng.geom.core.IScale
:sigs {:scale {:arglists ([_ s]) :doc nil :name scale :tag nil}
:scale-size {:arglists ([_ s]) :doc nil :name scale-size :tag nil}}
}
IProximity
{:on thi.ng.geom.core.IProximity
:sigs {:closest-point {:arglists ([_ p])
:doc nil
:name closest-point
:tag nil}
}
}
IEdgeAccess
{:on thi.ng.geom.core.IEdgeAccess
:sigs {:edges {:arglists ([_] [_ opts]) :doc nil :name edges :tag nil}}}
ICenter
{:on thi.ng.geom.core.ICenter
:sigs {:center
{:arglists ([_] [_ p])
:doc
"Returns updated entity centered around world origin or given point"
:name center
:tag nil}

:centroid {:arglists ([_])
:doc "Returns centroid of entity"
:name centroid
:tag nil}
}
}
IExtrude
{:on thi.ng.geom.core.IExtrude
:sigs {:extrude {:arglists ([_ opts]) :doc nil :name extrude :tag nil}
:extrude-shell {:arglists ([_ opts])
:doc nil
:name extrude-shell
:tag nil}
}
}
IVolume
{:on thi.ng.geom.core.IVolume
:sigs {:signed-volume {:arglists ([_]) :doc nil :name signed-volume :tag nil}
:volume {:arglists ([_])
:doc "Returns an entity's inner volume."
:name volume
:tag nil}
}
}
ICircumference
{:on thi.ng.geom.core.ICircumference
:sigs {:circumference {:arglists ([_])
:doc "Returns an entity's circumference"
:name circumference
:tag nil}
}
}
IMeshConvert
{:on thi.ng.geom.core.IMeshConvert
:sigs {:as-mesh {:arglists ([_] [_ opts])
:doc "Transforms the current enitity into a mesh instance"
:name as-mesh
:tag nil}
}
}
IIntersect
{:on thi.ng.geom.core.IIntersect
:sigs {:intersect-line {:arglists ([_ l] [_ p q])
:doc nil
:name intersect-line
:tag nil}

:intersect-ray {:arglists ([_ r] [_ p dir])
:doc nil
:name intersect-ray
:tag nil}

:intersect-shape {:arglists ([_ s])
:doc nil
:name intersect-shape
:tag nil}
}
}
ITranslate
{:on thi.ng.geom.core.ITranslate
:sigs {:translate {:arglists ([_ t]) :doc nil :name translate :tag nil}}}
IBoundingCircle
{:on thi.ng.geom.core.IBoundingCircle
:sigs {:bounding-circle {:arglists ([_])
:doc nil
:name bounding-circle
:tag nil}
}
}
IClassify
{:on thi.ng.geom.core.IClassify
:sigs {:classify-point {:arglists ([_ p])
:doc nil
:name classify-point
:tag nil}
}
}

Grid elements deformed


thi.ng.geom.triangle

2-dimensional and 3-dimensional triangle generation