mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-10-24 10:27:45 +00:00
moved kleinize from floorshapes to hyperpoint
This commit is contained in:
@@ -137,11 +137,6 @@ matrixitem genitem(const transmatrix& m1, const transmatrix& m2, int nsym) {
|
|||||||
|
|
||||||
bool do_kleinize() { return S3 >= OINF || (cgflags & qIDEAL); }
|
bool do_kleinize() { return S3 >= OINF || (cgflags & qIDEAL); }
|
||||||
|
|
||||||
EX hyperpoint kleinize(hyperpoint h) {
|
|
||||||
if(GDIM == 2) return point3(h[0]/h[2], h[1]/h[2], 1);
|
|
||||||
else return point31(h[0]/h[3], h[1]/h[3], h[2]/h[3]);
|
|
||||||
}
|
|
||||||
|
|
||||||
EX hyperpoint may_kleinize(hyperpoint h) {
|
EX hyperpoint may_kleinize(hyperpoint h) {
|
||||||
if(do_kleinize()) return kleinize(h);
|
if(do_kleinize()) return kleinize(h);
|
||||||
else return h;
|
else return h;
|
||||||
|
|||||||
@@ -789,6 +789,11 @@ EX transmatrix parabolic13(ld u, ld v) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EX hyperpoint kleinize(hyperpoint h) {
|
||||||
|
if(GDIM == 2) return point3(h[0]/h[2], h[1]/h[2], 1);
|
||||||
|
else return point31(h[0]/h[3], h[1]/h[3], h[2]/h[3]);
|
||||||
|
}
|
||||||
|
|
||||||
EX hyperpoint deparabolic13(hyperpoint h) {
|
EX hyperpoint deparabolic13(hyperpoint h) {
|
||||||
if(euclid) return h;
|
if(euclid) return h;
|
||||||
if(cgi.emb->is_euc_in_hyp()) {
|
if(cgi.emb->is_euc_in_hyp()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user