| 162 | | (sat-image-tile-properties image geo-box (tile-geo-box node)))))) |
|---|
| 163 | | (let* ((nodes (remove-if-not #'pw-ph-large-enough (layer-quad-nodes))) |
|---|
| 164 | | (max-scaling (max-scaling nodes)) |
|---|
| 165 | | (layer (make-object 'sat-layer :name name :geo-box geo-box))) |
|---|
| | 156 | (sat-image-tile-properties image geo-box (tile-geo-box node)))))) |
|---|
| | 157 | (let* ((name (name layer)) |
|---|
| | 158 | (nodes (remove-if-not #'pw-ph-large-enough (layer-quad-nodes))) |
|---|
| | 159 | (max-scaling (max-scaling nodes))) |
|---|
| | 160 | (format t "; creating ~a at depth ~a~%" name start-depth) |
|---|
| 168 | | (tile-geo-box node) name max-scaling))))) |
|---|
| | 163 | (tile-geo-box node) name max-scaling)) |
|---|
| | 164 | (unless (= 1 max-scaling) |
|---|
| | 165 | (make-sat-image-tiles-for-depth image geo-box layer (1+ start-depth)))))) |
|---|
| | 166 | |
|---|
| | 167 | (defun make-sat-layer (image geo-box name &optional (start-depth 0)) |
|---|
| | 168 | (check-type name symbol) |
|---|
| | 169 | (assert (not (find-sat-layer name)) (name) |
|---|
| | 170 | "A sat-layer of name ~S already exists." name) |
|---|
| | 171 | (check-type image cl-gd::image) |
|---|
| | 172 | (assert (geo-box-encloses-p *m2-geo-box* geo-box)) |
|---|
| | 173 | (check-type start-depth (integer 0)) |
|---|
| | 174 | (let ((layer (make-object 'sat-layer :name name :geo-box geo-box))) |
|---|
| | 175 | (make-sat-image-tiles-for-depth image geo-box layer start-depth))) |
|---|