⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 libgm.ps

📁 This contains Graphic gems code
💻 PS
📖 第 1 页 / 共 4 页
字号:
b(=)g(gmMin\(f1,f2\);)194 1852 y(gmMin\(f1,f2,f3\))69b Ff(minim)o(um)9 b(of)i Fg(f1)h Ff(and)e Fg(f2)i Ff(and)eFg(f3)306 b(f)20 b(=)g(gmMin\(f1,f2,f3\);)194 1897 y(gmRadians\(f\))129b Ff(con)o(v)o(ert)10 b(angle)g(in)h(degrees,)e Fg(f)pFf(,)j(to)f(angle)f(in)h(radians)61 b Fg(f1)20 b(=)g(gmRadians\(f2\);)194 1943 y(gmRound\(f\))169 b(f)12 b Ff(rounded)d(to)i(nearest)f(in)o(teger)343 b Fg(f1)20 b(=)g(gmRound\(f2\);)194 1989 y(gmSign\(f\))189b Ff(sign)11 b(of)g Fg(f)h Ff(\()p Fc(\000)p Ff(1)f(i\013)gFg(f)h Fe(<)e Ff(0\))426 b Fg(f1)20 b(=)g(gmSign\(f2\);)1942034 y(gmSlide\(f,f1,f2\))49 b Ff(hermite)9 b(in)o(terp)q(olation)f(from)j Fg(f1)g Ff(\(when)g Fg(f)h Ff(=)e(0\))598 2080y(to)h Fg(f2)h Ff(\(when)f Fg(f)h Ff(=)e(1\))447 b Fg(f3)20b(=)g(gmSlide\(f,f1,f2\);)194 2126 y(gmSmooth\(f\))149b Ff(smo)q(oth)10 b(hermite)f(in)o(terp)q(olate)g(of)iFg(f)291 b(f1)20 b(=)g(gmSmooth\(f2\);)194 2171 y(gmSqr\(f\))209b(f)583 2160 y Fk(2)1347 2171 y Fg(f1)20 b(=)g(gmSqr\(f2\);)1942217 y(gmSwap\(f1,f2\))109 b Ff(sw)o(ap)11 b Fg(f1)hFf(and)f Fg(f2)536 b(gmSwap\(f1,f2\);)194 2263 y(gmSwap\(i1,i2\))109b Ff(sw)o(ap)11 b Fg(i1)h Ff(and)f Fg(i2)536 b(gmSwap\(i1,i2\);)1942308 y(gmTrunc\(f\))169 b(f)12 b Ff(truncated)600 b Fg(f1)20b(=)g(gmTrunc\(f2\);)194 2354 y(gmZSign\(f\))169 b Ff(zero)11b(or)g(sign)f(of)i Fg(f)f Ff(\()p Fc(\000)p Ff(1,)h(0,)f(or)g(1\))327b Fg(f1)20 b(=)g(gmZSign\(f2\);)p 170 2388 1668 5 v eop%%Page: 3 33 2 bop 1187 125 a Fa(.1)11 b(A)g(Graphics)g(Math)g(Librar)q(y)62b Fs(})h Fu(3)710 350 y Fi(T)m(able)10 b(3.)65 b Fr(lib)n(gm)13b Fh(V)m(ector)e(Operators)p 163 381 1680 5 v 196 430a Ff(op)56 b(description)288 b(usage)p 953 444 2 46 v144 w(op)51 b(description)251 b(usage)p 163 454 16802 v 188 498 a Fg([)p Fe(i)p Fg(])50 b Ff(access)10 b(comp)q(onen)o(t)fFe(i)163 b Fg(f)20 b(=)g(v[0];)p 953 512 2 46 v 49 w(/=)50b Ff(destructiv)o(e)8 b(scalar)j(divide)47 b Fg(v1)20b(/=)g(f;)325 544 y Ff(2D:)11 b Fe(i)f Fc(2)g(f)p Ff(0)pFe(;)5 b Ff(1)p Fc(g)p 953 557 V 570 w Ff(requires:)13b(divisor)d Fc(\031)-22 b Fe(=)18 b Ff(0)325 589 y(3D:)11b Fe(i)f Fc(2)g(f)p Ff(0)p Fe(;)5 b Ff(1)p Fe(;)g Ff(2)pFc(g)p 953 603 V 422 w Fg(+)60 b Ff(addition)293 b Fg(v1)20b(=)g(v2)g(+)g(v3;)188 635 y([)p Fe(i)p Fg(])50 b Ff(c)o(hange)10b(comp)q(onen)n(t)f Fe(i)151 b Fg(v[0])20 b(=)f(f;)p953 649 V 60 w(-)60 b Ff(subtraction)245 b Fg(v1)20 b(=)g(v2)g(-)g(v3;)325 681 y Ff(2D:)11 b Fe(i)f Fc(2)g(f)p Ff(0)p Fe(;)5b Ff(1)p Fc(g)p 953 694 V 455 w Fg(-)60 b Ff(negation)9b(\(unary\))161 b Fg(v1)20 b(=)g(-v2;)325 726 y Ff(3D:)11b Fe(i)f Fc(2)g(f)p Ff(0)p Fe(;)5 b Ff(1)p Fe(;)g Ff(2)pFc(g)p 953 740 V 422 w Fg(*)60 b Ff(scalar)10 b(pre-m)o(ultiply)129b Fg(v1)20 b(=)g(f)g(*)g(v2;)204 772 y(=)66 b Ff(assign)366b Fg(v1)20 b(=)g(v2;)p 953 786 V 79 w(*)60 b Ff(scalar)10b(p)q(ost-m)o(ultipl)o(y)113 b Fg(v1)20 b(=)g(v2)g(*)g(f;)194818 y(+=)56 b Ff(destructiv)o(e)9 b(add)221 b Fg(v1)20b(+=)g(v2;)p 953 831 V 59 w(/)60 b Ff(scalar)10 b(divide)228b Fg(v1)20 b(=)g(v2)g(/)g(f;)194 863 y(-=)56 b Ff(destructiv)o(e)9b(subtract)149 b Fg(v1)20 b(-=)g(v2;)p 953 877 V 174w Ff(requires:)13 b(divisor)d Fc(\031)-22 b Fe(=)18 bFf(0)194 909 y Fg(*=)56 b Ff(destructiv)o(e)9 b(scalar)h(m)o(ultiply)47b Fg(v1)20 b(*=)g(f;)p 953 923 V 69 w(==)50 b Ff(equalit)o(y)9b(\(fuzzy\))179 b Fg(if)20 b(\(v1)g(==)g(v2\))f Fe(:)6b(:)g(:)p 953 968 V 979 955 a Fg(!=)50 b Ff(inequalit)o(y)8b(\(fuzzy\))150 b Fg(if)20 b(\(v1)g(!=)g(v2\))f Fe(:)6b(:)g(:)p 163 989 1680 5 v 712 1284 a Fi(T)m(able)j(4.)66b Fr(lib)n(gm)13 b Fh(V)m(ector)e(Functions)p 150 13161775 5 v 175 1364 a Ff(function)359 b(description)527b(usage)p 150 1388 1775 2 v 175 1432 a Fg(gmVector2\(\))268b Ff(default)10 b(constructor)o(,)f(initializes)g(to)iFg(\(0,0\))84 b(gmVector)19 b(v;)175 1478 y(gmVector2\(v\))248b Ff(cop)o(y)10 b(constructor)439 b Fg(gmVector)19 b(v1\(v2\);)1751524 y(gmVector2\(f1,f2\))168 b Ff(constructor,)8 b(initializes)h(to)jFg(\(f1,f2\))162 b(gmVector)19 b(v\(f1,f2\);)175 1569y(assign\(f1,f2\))228 b Ff(assign)10 b(comp)q(onen)o(ts)409b Fg(v.assign\(f1,f2\);)p 150 1593 V 175 1638 a(gmVector3\(\))268b Ff(default)10 b(constructor)o(,)f(initializes)g(to)iFg(\(0,0\))84 b(gmVector)19 b(v;)175 1683 y(gmVector3\(v\))248b Ff(cop)o(y)10 b(constructor)439 b Fg(gmVector)19 b(v1\(v2\);)1751729 y(gmVector3\(f1,f2,f3\))108 b Ff(constructor,)8b(initializes)h(to)j Fg(\(f1,f2,f3\))102 b(gmVector)19b(v\(f1,f2,f3\);)175 1775 y(assign\(f1,f2,f3\))168 bFf(assign)10 b(comp)q(onen)o(ts)409 b Fg(v.assign\(f1,f2,f3\);)1751820 y(cross\(v1,v2\))248 b Ff(cross)11 b(pro)q(duct)e(of)iFg(v1)h Ff(and)f Fg(v2)279 b(v)20 b(=)g(cross\(v1,v2\);)p150 1844 V 175 1888 a(distance\(v1,v2\))188 b Ff(distance)9b(b)q(et)o(w)o(een)i(p)q(oin)o(ts)f Fg(v1)h Ff(and)gFg(v2)159 b(f)20 b(=)g(distance\(v1,v2\);)175 1934 y(distanceSquared\(v1,v2\))48 b Ff(square)10 b(of)h Fg(distance\(v1,v2\))248 b(f)20 b(=)g(distanceSquared\(v1,v2\);)1751980 y(dot\(v1,v2\))288 b Ff(dot)11 b(pro)q(duct)e(of)iFg(v1)h Ff(and)f Fg(v2)303 b(f)20 b(=)g(dot\(v1,v2\);)1752025 y(length\(\))328 b Ff(length)10 b(of)h(this)g(v)o(ector)386b Fg(f)20 b(=)g(v.length\(\);)175 2071 y(lengthSquared\(\))188b Ff(square)10 b(of)h Fg(length\(\))388 b(f)20 b(=)g(v.lengthSquared\(\);)175 2117 y(lerp\(f,v1,v2\))228b Ff(linear)10 b(in)o(terp)q(olation)e(from)i Fg(v1)iFf(\(when)f Fg(f)g Ff(=)g(0\))49 b Fg(v)20 b(=)g(lerp\(f,v1,v2\);)6982162 y Ff(to)11 b Fg(v2)h Ff(\(when)f Fg(f)h Ff(=)e(1\))1752208 y Fg(normalize\(\))268 b Ff(normalize)9 b(this)i(v)o(ector)fFg(v)343 b(v.normalize\(\);)698 2254 y Ff(requires:)14b Fg(v.length\(\))d Fc(\031)-22 b Fe(=)17 b Ff(0)p 1502288 1775 5 v eop%%Page: 4 44 3 bop 150 125 a Fu(4)62 b Fs(})711 947 y Fi(T)m(able)10b(5.)66 b Fr(lib)n(gm)13 b Fh(Matr)q(ix)d(Operators)p150 979 1800 5 v 210 1028 a Ff(op)85 b(description)302b(usage)p 1070 1041 2 46 v 204 w(op)51 b(description)241b(usage)p 150 1051 1801 2 v 175 1108 a Fg([)p Fe(i)pFg(][)p Fe(j)r Fg(])50 b Ff(access)10 b(elemen)o(t)fFe(i;)d(j)198 b Fg(f)20 b(=)g(M[0][0];)p 1070 1122 246 v 59 w(+)60 b Ff(addition)283 b Fg(M1)20 b(=)g(M2)g(+)f(M3;)3681154 y Ff(3)7 b Fc(\002)i Ff(3:)15 b Fe(i;)5 b(j)12 bFc(2)e(f)p Ff(0)p Fe(;)5 b Ff(1)p Fe(;)g Ff(2)p Fc(g)p1070 1167 V 427 w Fg(-)60 b Ff(subtraction)235 b Fg(M1)20b(=)g(M2)g(-)f(M3;)368 1199 y Ff(4)7 b Fc(\002)i Ff(4:)15b Fe(i;)5 b(j)12 b Fc(2)e(f)p Ff(0)p Fe(;)5 b Ff(1)pFe(;)g Ff(2)p Fe(;)g Ff(3)p Fc(g)p 1070 1213 V 394 wFg(-)60 b Ff(negation)9 b(\(unary\))151 b Fg(M1)20 b(=)g(-M2;)1751245 y([)p Fe(i)p Fg(][)p Fe(j)r Fg(])50 b Ff(c)o(hange)9b(elemen)o(t)h Fe(i;)5 b(j)186 b Fg(M[0][0])19 b(=)h(f;)p1070 1259 V 60 w(*)60 b Ff(matrix)9 b(m)o(ultiply)167b Fg(M1)20 b(=)g(M2)g(*)f(M3;)368 1291 y Ff(3)7 b Fc(\002)iFf(3:)15 b Fe(i;)5 b(j)12 b Fc(2)e(f)p Ff(0)p Fe(;)5b Ff(1)p Fe(;)g Ff(2)p Fc(g)p 1070 1304 V 427 w Fg(*)60b Ff(scalar)10 b(pre-m)o(ultipl)o(y)120 b Fg(M1)20 b(=)g(f)g(*)g(M2;)368 1336 y Ff(4)7 b Fc(\002)i Ff(4:)15 b Fe(i;)5 b(j)12b Fc(2)e(f)p Ff(0)p Fe(;)5 b Ff(1)p Fe(;)g Ff(2)p Fe(;)gFf(3)p Fc(g)p 1070 1350 V 394 w Fg(*)60 b Ff(scalar)10b(p)q(ost-m)o(ultip)o(ly)103 b Fg(M1)20 b(=)g(M2)g(*)f(f;)2191382 y(=)94 b Ff(assign)380 b Fg(M1)20 b(=)g(M2;)p 10701396 V 139 w(*)60 b Ff(ro)o(w)11 b(v)o(ector)f(pre-m)o(ultiply)46b Fg(M1)20 b(=)g(v)g(*)g(M2;)209 1428 y(+=)84 b Ff(destructiv)o(e)8b(add)236 b Fg(M1)20 b(+=)g(M2;)p 1070 1441 V 119 w(*)60b Ff(column)9 b(v)o(ector)h(p)q(ost-)105 b Fg(M1)20 b(=)g(M2)g(*)f(v;)209 1473 y(-=)84 b Ff(destructiv)o(e)8 b(subtract)164b Fg(M1)20 b(-=)g(M2;)p 1070 1487 V 234 w Ff(m)o(ultiply)2091519 y Fg(*=)84 b Ff(destructiv)o(e)8 b(matrix)i(m)o(ultiply)47b Fg(M1)20 b(*=)g(M2;)p 1070 1533 V 119 w(/)60 b Ff(scalar)10b(divide)218 b Fg(M1)20 b(=)g(M2)g(/)f(f;)209 1565 y(*=)84b Ff(destructiv)o(e)8 b(scalar)i(m)o(ultiply)62 b Fg(M1)20b(*=)g(f;)p 1070 1578 V 254 w Ff(requires:)13 b(divisor)dFc(\031)-22 b Fe(=)18 b Ff(0)209 1610 y Fg(/=)84 b Ff(destructiv)o(e)8b(scalar)i(divide)99 b Fg(M1)20 b(/=)g(f;)p 1070 1624V 129 w(==)50 b Ff(equalit)o(y)9 b(\(fuzzy\))169 b Fg(if)20b(\(M1)g(==)f(M2\))h Fe(:)6 b(:)g(:)368 1656 y Ff(requires:)13b(divisor)d Fc(\031)-22 b Fe(=)18 b Ff(0)p 1070 1670V 408 w Fg(!=)50 b Ff(inequalit)o(y)8 b(\(fuzzy\))140b Fg(if)20 b(\(M1)g(!=)f(M2\))h Fe(:)6 b(:)g(:)p 1501690 1800 5 v eop%%Page: 5 55 4 bop 1187 125 a Fa(.1)11 b(A)g(Graphics)g(Math)g(Librar)q(y)62b Fs(})h Fu(5)713 589 y Fi(T)m(able)10 b(6.)66 b Fr(lib)n(gm)13b Fh(Matr)q(ix)d(Functions)p 150 620 1723 5 v 175 669a Ff(function)428 b(description)385 b(usage)p 150 6931724 2 v 175 737 a Fg(gmMatrix3\(\))337 b Ff(default)9b(3)f Fc(\002)g Ff(3)j(matrix)f(constructor,)46 b Fg(gmMatrix)20b(M;)767 783 y Ff(initializes)9 b(to)i(all)g(zero)q(es)175828 y Fg(gmMatrix3\(M\))317 b Ff(cop)o(y)10 b(constructor)297b Fg(gmMatrix)20 b(M1\(M2\);)175 874 y(gmMatrix3\(f00,f01,f02,)374920 y(f10,f11,f12,)374 965 y(f20,f21,f22\))732 874 yFf(constructor)379 b Fg(gmMatrix)20 b(M\(f00,f01,f02,)1509920 y(f10,f11,f12,)1509 965 y(f20,f21,f22\))175 1011y(assign\(f00,f01,f02,)315 1057 y(f10,f11,f12,)315 1102y(f20,f21,f22\))732 1011 y Ff(assign)10 b(elemen)o(ts)318b Fg(M.assign\(f00,f01,f02,)1469 1057 y(f10,f11,f12,)14691102 y(f20,21,22\))175 1148 y(identity\(\))357 b Ff(3)7b Fc(\002)h Ff(3)k(iden)o(tit)o(y)d(matrix)232 b Fg(M)20b(=)g(gmMatrix3::identity\(\);)p 150 1172 V 175 1216a(gmMatrix4\(\))337 b Ff(default)9 b(4)f Fc(\002)g Ff(4)j(matrix)f(constructor,)46 b Fg(gmMatrix)20 b(M;)767 1262 y Ff(initializes)9b(to)i(all)g(zero)q(es)175 1307 y Fg(gmMatrix4\(M\))317b Ff(cop)o(y)10 b(constructor)297 b Fg(gmMatrix)20 b(M1\(M2\);)1751353 y(gmMatrix4\(f00,f01,f02,f03,)374 1399 y(f10,f11,f12,f13,)3741444 y(f20,f21,f22,f23,)374 1490 y(f30,f31,f32,f33\))7321353 y Ff(constructor)379 b Fg(gmMatrix)20 b(M\(f00,f01,f02,f03,)15091399 y(f10,f11,f12,f13,)1509 1444 y(f20,f21,f22,f23,)15091490 y(f30,f31,f32,f33\))175 1536 y(assign\(f00,f01,f02,f03,)3151581 y(f10,f11,f12,f13,)315 1627 y(f20,f21,f22,f23,)3151673 y(f30,f31,f32,f33\))732 1536 y Ff(assign)10 b(elemen)o(ts)318b Fg(M.assign\(f00,f01,f02,f03,)1469 1581 y(f10,f11,f12,f13,)14691627 y(f20,f21,f22,f23,)1469 1673 y(f30,f31,f32,f33\))1751718 y(identity\(\))357 b Ff(4)7 b Fc(\002)h Ff(4)k(iden)o(tit)o(y)d(matrix)232 b Fg(M)20 b(=)g(gmMatrix4::identity\(\);)p150 1742 V 175 1786 a(adjoint\(\))377 b Ff(adjoin)o(t)9b(of)i(this)g(matrix)224 b Fg(M1)20 b(=)g(M2.adjoint\(\);)1751832 y(determinant\(\))297 b Ff(determina)o(n)o(t)9 b(of)i(this)g(matrix)144 b Fg(f)20 b(=)g(M.determinant\(\);)175 1878y(inverse\(\))377 b Ff(in)o(v)o(erse)9 b(of)j(this)e(matrix)gFg(M)197 b(M1)20 b(=)g(M2.inverse\(\);)767 1923 y Ff(requires:)13b Fg(!M.isSingular\(\))175 1969 y(isSingular\(\))317b(true)11 b Ff(i\013)g(this)g(matrix)f(is)h(singular)81b Fg(if)20 b(\(M.isSingular\(\)\))f Fe(:)6 b(:)f(:)1752015 y Fg(transpose\(\))337 b Ff(transp)q(ose)9 b(of)i(this)g(matrix)185 b Fg(M1)20 b(=)g(M2.transpose\(\);)p 150 2049 17235 v eop%%Trailerenduserdict /end-hook known{end-hook}if%%EOF

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -