# Prints image size + ink bounding box (brightness < 0.75) for each v3 mark. extends SceneTree const MARKS := "C:/Users/CAN/tinqs-ltd/docs/conceptart/generated-images/tattoo-marks/" const FILES := [ "mark-01-chiefs-mark_arm_v3.png", "mark-10-iron-spine_arm_v3.png", "mark-02-voyagers-current_leg_v3.png", "mark-07-storm-bearer_leg_v3.png", "mark-06-hearth-warmth_back_v3.png", "mark-09-star-eye_chest_v3.png", ] func _init() -> void: for f in FILES: var img := Image.load_from_file(MARKS + f) img.convert(Image.FORMAT_RGBA8) var w := img.get_width() var h := img.get_height() var minx := w var maxx := -1 var miny := h var maxy := -1 for y in h: for x in w: var c := img.get_pixel(x, y) if (c.r + c.g + c.b) / 3.0 < 0.75: minx = mini(minx, x) maxx = maxi(maxx, x) miny = mini(miny, y) maxy = maxi(maxy, y) var bw := maxx - minx + 1 var bh := maxy - miny + 1 print("%s %dx%d bbox x %d..%d y %d..%d (%dx%d, aspect h/w %.2f)" % [f, w, h, minx, maxx, miny, maxy, bw, bh, float(bh) / float(bw)]) quit()