summaryrefslogtreecommitdiffstats
path: root/virtual-programs
diff options
context:
space:
mode:
authorOmar Rizwan <omar@omar.website>2023-04-24 22:20:59 +0000
committerOmar Rizwan <omar@omar.website>2023-04-24 22:20:59 +0000
commita7063b5672e2e152faa979837d72b744520bdece (patch)
treeab0e94fd7336df4f5049a20481d8b7f88aaa4a0d /virtual-programs
parentScope claims in docs/examples/tests (diff)
downloadfolk-a7063b5672e2e152faa979837d72b744520bdece.tar.gz
folk-a7063b5672e2e152faa979837d72b744520bdece.zip
Some moderate performance improvements from the C branch
Reduce scope that's carried into critical-path Whens, don't evaluate Display commit twice
Diffstat (limited to 'virtual-programs')
-rw-r--r--virtual-programs/tags-and-calibration.folk10
1 files changed, 7 insertions, 3 deletions
diff --git a/virtual-programs/tags-and-calibration.folk b/virtual-programs/tags-and-calibration.folk
index 531ed087..bc39033e 100644
--- a/virtual-programs/tags-and-calibration.folk
+++ b/virtual-programs/tags-and-calibration.folk
@@ -71,12 +71,12 @@ proc ::projectorToCamera {projectorPoint} {
}
# Wish $this is highlighted white
-When tag /tag/ has center /c/ size /size/ {
+Say when tag /tag/ has center /c/ size /size/ {
Claim tag $tag is a tag
lassign [cameraToProjector $c] px py
Claim $tag is a rectangle with x [expr $px-20] y [expr $py-10] width [expr $size*2] height [expr $size*2]
-}
+} with environment {}
When tag /tag/ is a tag {
puts "Added tag $tag"
@@ -90,7 +90,7 @@ When tag /tag/ is a tag {
}
-When tag /tag/ has corners /corners/ {
+Say when tag /tag/ has corners /corners/ {
set tagcorners [lmap p $corners {cameraToProjector $p}]
#foreach tagcorner $tagcorners { Display::text fb {*}$tagcorner 10 "$tag" }
set tagbottom [sub [lindex $tagcorners 1] [lindex $tagcorners 0]]
@@ -105,4 +105,8 @@ When tag /tag/ has corners /corners/ {
lappend edges [list [expr {[llength $corners] - 1}] 0]
set region [list $corners $edges [::tcl::mathfunc::atan2 {*}$tagright]]
Claim $tag has region $region
+} with environment {
+ %matmul ::math::linearalgebra::matmul
+ %sub ::math::linearalgebra::sub
+ %add ::math::linearalgebra::add
}