HEX
Server: LiteSpeed
System: Linux houston.panomity.com 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
User: nudepix (1011)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //tmp/bboxchk.py
import struct, json, glob, os
def bbox(path):
    with open(path,"rb") as f:
        f.read(12); clen,ct=struct.unpack("<II",f.read(8)); js=json.loads(f.read(clen))
    mins=[1e9]*3; maxs=[-1e9]*3; accs=js.get("accessors",[])
    for m in js.get("meshes",[]):
        for pr in m.get("primitives",[]):
            pi=pr.get("attributes",{}).get("POSITION")
            if pi is None: continue
            a=accs[pi]
            if "min" in a and "max" in a:
                for k in range(3):
                    mins[k]=min(mins[k],a["min"][k]); maxs[k]=max(maxs[k],a["max"][k])
    return mins, maxs
for p in sorted(glob.glob("/home/panomity.de/vr.panomity.com/media/objects3d/ph_*.glb")):
    mn,mx = bbox(p)
    name = os.path.basename(p)
    base = "JA" if abs(mn[1]) < 0.02 else "NEIN"
    print("%-22s Ymin=%+.3f Ymax=%+.3f  Basis-bei-0: %s" % (name, mn[1], mx[1], base))