alias inellipseq {
if ($calc((1-(2*($1 -$3 -$5 /2) /$5)^2)^0.5*$6 /2) && $&
$abs($calc($2 -$4 -$6 /2)) isnum 0- $+ $v1) return $true
return $false
}
alias inroundrectq {
if $inrect($1,$2,$3,$4,$5,$6) {
var %a = $7 / 2, %b = $8 / 2, %x = $1 - $3, %y = $2 - $4
if %x < %a {
if (%y < %b) return $inellipseq($1,$2,$3,$4,$7,$8)
if (%y > $calc($6 -%b)) return $inellipseq($1,$2,$3,$calc($4 +$6 -$8),$7,$8)
}
elseif %x > $calc($5 -%a) {
if (%y < %b) return $inellipseq($1,$2,$calc($3 +$5 -$7),$4,$7,$8)
if (%y > $calc($6 -%b)) return $inellipseq($1,$2,$calc($3 +$5 -$7),$calc($4 +$6 -$8),$7,$8)
}
return $true
}
return $false
}