702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
|
dot-data)))
(edgedat (let ((edges (filter (lambda (x) ;; filter for edge
(if (equal? (car x) "edge")
(equal? hed (cadr x))
#f))
dot-data)))
(map (lambda (inlst)
(map (lambda (instr)
(* dotscale (string->number instr))) ;; convert to number and scale
(let ((il (cddddr inlst)))
(take il (- (length il) 2)))))
edges)))
(llx (* (string->number (list-ref nodedat 2)) dotscale))
(lly (* (string->number (list-ref nodedat 3)) dotscale))
(boxw (* (string->number (list-ref nodedat 4)) dotscale))
(boxh (* (string->number (list-ref nodedat 5)) dotscale))
(urx (+ llx boxw))
(ury (+ lly boxh)))
|
>
|
|
|
|
>
>
>
>
|
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
|
dot-data)))
(edgedat (let ((edges (filter (lambda (x) ;; filter for edge
(if (equal? (car x) "edge")
(equal? hed (cadr x))
#f))
dot-data)))
(map (lambda (inlst)
(dcommon:process-polyline
(map (lambda (instr)
(* dotscale (string->number instr))) ;; convert to number and scale
(let ((il (cddddr inlst)))
(take il (- (length il) 2))))
(lambda (x y)
(list (+ x xtorig)
(+ y ytorig)))
#f #f)) ;; process polyline
edges)))
(llx (* (string->number (list-ref nodedat 2)) dotscale))
(lly (* (string->number (list-ref nodedat 3)) dotscale))
(boxw (* (string->number (list-ref nodedat 4)) dotscale))
(boxh (* (string->number (list-ref nodedat 5)) dotscale))
(urx (+ llx boxw))
(ury (+ lly boxh)))
|