From c79a2968d7a38871d90e9cd6a861803a749fca93 Mon Sep 17 00:00:00 2001 From: Omar Rizwan Date: Tue, 25 Apr 2023 17:09:18 -0400 Subject: Support explicit lexical envs. Narrow envs for tags-and-calibration Another 5ms performance improvement, I think? --- virtual-programs/tags-and-calibration.folk | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'virtual-programs') diff --git a/virtual-programs/tags-and-calibration.folk b/virtual-programs/tags-and-calibration.folk index dd0622be..497d5ecd 100644 --- a/virtual-programs/tags-and-calibration.folk +++ b/virtual-programs/tags-and-calibration.folk @@ -74,9 +74,9 @@ proc ::projectorToCamera {projectorPoint} { When tag /tag/ has center /c/ size /size/ { Claim tag $tag is a tag - lassign [cameraToProjector $c] px py + 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" @@ -91,7 +91,7 @@ When tag /tag/ is a tag { When tag /tag/ has corners /corners/ { - set tagcorners [lmap p $corners {cameraToProjector $p}] + 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]] set tagright [sub [lindex $tagcorners 2] [lindex $tagcorners 1]] @@ -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 } -- cgit v1.2.3