123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878 |
- //------------------------------------------------------------------------------
- // <auto-generated>
- // This code was generated by a tool.
- //
- // Changes to this file may cause incorrect behavior and will be lost if
- // the code is regenerated. To update the generation of this file, modify and re-run Unity.Mathematics.CodeGen.
- // </auto-generated>
- //------------------------------------------------------------------------------
- using System;
- using System.Runtime.CompilerServices;
- using System.Diagnostics;
- using Unity.IL2CPP.CompilerServices;
-
- #pragma warning disable 0660, 0661
-
- namespace Unity.Mathematics
- {
- /// <summary>A 3 component vector of doubles.</summary>
- [DebuggerTypeProxy(typeof(double3.DebuggerProxy))]
- [System.Serializable]
- [Il2CppEagerStaticClassConstruction]
- public partial struct double3 : System.IEquatable<double3>, IFormattable
- {
- /// <summary>x component of the vector.</summary>
- public double x;
- /// <summary>y component of the vector.</summary>
- public double y;
- /// <summary>z component of the vector.</summary>
- public double z;
-
- /// <summary>double3 zero value.</summary>
- public static readonly double3 zero;
-
- /// <summary>Constructs a double3 vector from three double values.</summary>
- /// <param name="x">The constructed vector's x component will be set to this value.</param>
- /// <param name="y">The constructed vector's y component will be set to this value.</param>
- /// <param name="z">The constructed vector's z component will be set to this value.</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(double x, double y, double z)
- {
- this.x = x;
- this.y = y;
- this.z = z;
- }
-
- /// <summary>Constructs a double3 vector from a double value and a double2 vector.</summary>
- /// <param name="x">The constructed vector's x component will be set to this value.</param>
- /// <param name="yz">The constructed vector's yz components will be set to this value.</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(double x, double2 yz)
- {
- this.x = x;
- this.y = yz.x;
- this.z = yz.y;
- }
-
- /// <summary>Constructs a double3 vector from a double2 vector and a double value.</summary>
- /// <param name="xy">The constructed vector's xy components will be set to this value.</param>
- /// <param name="z">The constructed vector's z component will be set to this value.</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(double2 xy, double z)
- {
- this.x = xy.x;
- this.y = xy.y;
- this.z = z;
- }
-
- /// <summary>Constructs a double3 vector from a double3 vector.</summary>
- /// <param name="xyz">The constructed vector's xyz components will be set to this value.</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(double3 xyz)
- {
- this.x = xyz.x;
- this.y = xyz.y;
- this.z = xyz.z;
- }
-
- /// <summary>Constructs a double3 vector from a single double value by assigning it to every component.</summary>
- /// <param name="v">double to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(double v)
- {
- this.x = v;
- this.y = v;
- this.z = v;
- }
-
- /// <summary>Constructs a double3 vector from a single bool value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">bool to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(bool v)
- {
- this.x = v ? 1.0 : 0.0;
- this.y = v ? 1.0 : 0.0;
- this.z = v ? 1.0 : 0.0;
- }
-
- /// <summary>Constructs a double3 vector from a bool3 vector by componentwise conversion.</summary>
- /// <param name="v">bool3 to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(bool3 v)
- {
- this.x = v.x ? 1.0 : 0.0;
- this.y = v.y ? 1.0 : 0.0;
- this.z = v.z ? 1.0 : 0.0;
- }
-
- /// <summary>Constructs a double3 vector from a single int value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">int to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(int v)
- {
- this.x = v;
- this.y = v;
- this.z = v;
- }
-
- /// <summary>Constructs a double3 vector from a int3 vector by componentwise conversion.</summary>
- /// <param name="v">int3 to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(int3 v)
- {
- this.x = v.x;
- this.y = v.y;
- this.z = v.z;
- }
-
- /// <summary>Constructs a double3 vector from a single uint value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">uint to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(uint v)
- {
- this.x = v;
- this.y = v;
- this.z = v;
- }
-
- /// <summary>Constructs a double3 vector from a uint3 vector by componentwise conversion.</summary>
- /// <param name="v">uint3 to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(uint3 v)
- {
- this.x = v.x;
- this.y = v.y;
- this.z = v.z;
- }
-
- /// <summary>Constructs a double3 vector from a single half value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">half to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(half v)
- {
- this.x = v;
- this.y = v;
- this.z = v;
- }
-
- /// <summary>Constructs a double3 vector from a half3 vector by componentwise conversion.</summary>
- /// <param name="v">half3 to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(half3 v)
- {
- this.x = v.x;
- this.y = v.y;
- this.z = v.z;
- }
-
- /// <summary>Constructs a double3 vector from a single float value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">float to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(float v)
- {
- this.x = v;
- this.y = v;
- this.z = v;
- }
-
- /// <summary>Constructs a double3 vector from a float3 vector by componentwise conversion.</summary>
- /// <param name="v">float3 to convert to double3</param>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public double3(float3 v)
- {
- this.x = v.x;
- this.y = v.y;
- this.z = v.z;
- }
-
-
- /// <summary>Implicitly converts a single double value to a double3 vector by assigning it to every component.</summary>
- /// <param name="v">double to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(double v) { return new double3(v); }
-
- /// <summary>Explicitly converts a single bool value to a double3 vector by converting it to double and assigning it to every component.</summary>
- /// <param name="v">bool to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static explicit operator double3(bool v) { return new double3(v); }
-
- /// <summary>Explicitly converts a bool3 vector to a double3 vector by componentwise conversion.</summary>
- /// <param name="v">bool3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static explicit operator double3(bool3 v) { return new double3(v); }
-
- /// <summary>Implicitly converts a single int value to a double3 vector by converting it to double and assigning it to every component.</summary>
- /// <param name="v">int to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(int v) { return new double3(v); }
-
- /// <summary>Implicitly converts a int3 vector to a double3 vector by componentwise conversion.</summary>
- /// <param name="v">int3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(int3 v) { return new double3(v); }
-
- /// <summary>Implicitly converts a single uint value to a double3 vector by converting it to double and assigning it to every component.</summary>
- /// <param name="v">uint to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(uint v) { return new double3(v); }
-
- /// <summary>Implicitly converts a uint3 vector to a double3 vector by componentwise conversion.</summary>
- /// <param name="v">uint3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(uint3 v) { return new double3(v); }
-
- /// <summary>Implicitly converts a single half value to a double3 vector by converting it to double and assigning it to every component.</summary>
- /// <param name="v">half to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(half v) { return new double3(v); }
-
- /// <summary>Implicitly converts a half3 vector to a double3 vector by componentwise conversion.</summary>
- /// <param name="v">half3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(half3 v) { return new double3(v); }
-
- /// <summary>Implicitly converts a single float value to a double3 vector by converting it to double and assigning it to every component.</summary>
- /// <param name="v">float to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(float v) { return new double3(v); }
-
- /// <summary>Implicitly converts a float3 vector to a double3 vector by componentwise conversion.</summary>
- /// <param name="v">float3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static implicit operator double3(float3 v) { return new double3(v); }
-
-
- /// <summary>Returns the result of a componentwise multiplication operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise multiplication.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise multiplication.</param>
- /// <returns>double3 result of the componentwise multiplication.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator * (double3 lhs, double3 rhs) { return new double3 (lhs.x * rhs.x, lhs.y * rhs.y, lhs.z * rhs.z); }
-
- /// <summary>Returns the result of a componentwise multiplication operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise multiplication.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise multiplication.</param>
- /// <returns>double3 result of the componentwise multiplication.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator * (double3 lhs, double rhs) { return new double3 (lhs.x * rhs, lhs.y * rhs, lhs.z * rhs); }
-
- /// <summary>Returns the result of a componentwise multiplication operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise multiplication.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise multiplication.</param>
- /// <returns>double3 result of the componentwise multiplication.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator * (double lhs, double3 rhs) { return new double3 (lhs * rhs.x, lhs * rhs.y, lhs * rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise addition operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise addition.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise addition.</param>
- /// <returns>double3 result of the componentwise addition.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator + (double3 lhs, double3 rhs) { return new double3 (lhs.x + rhs.x, lhs.y + rhs.y, lhs.z + rhs.z); }
-
- /// <summary>Returns the result of a componentwise addition operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise addition.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise addition.</param>
- /// <returns>double3 result of the componentwise addition.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator + (double3 lhs, double rhs) { return new double3 (lhs.x + rhs, lhs.y + rhs, lhs.z + rhs); }
-
- /// <summary>Returns the result of a componentwise addition operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise addition.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise addition.</param>
- /// <returns>double3 result of the componentwise addition.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator + (double lhs, double3 rhs) { return new double3 (lhs + rhs.x, lhs + rhs.y, lhs + rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise subtraction operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise subtraction.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise subtraction.</param>
- /// <returns>double3 result of the componentwise subtraction.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator - (double3 lhs, double3 rhs) { return new double3 (lhs.x - rhs.x, lhs.y - rhs.y, lhs.z - rhs.z); }
-
- /// <summary>Returns the result of a componentwise subtraction operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise subtraction.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise subtraction.</param>
- /// <returns>double3 result of the componentwise subtraction.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator - (double3 lhs, double rhs) { return new double3 (lhs.x - rhs, lhs.y - rhs, lhs.z - rhs); }
-
- /// <summary>Returns the result of a componentwise subtraction operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise subtraction.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise subtraction.</param>
- /// <returns>double3 result of the componentwise subtraction.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator - (double lhs, double3 rhs) { return new double3 (lhs - rhs.x, lhs - rhs.y, lhs - rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise division operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise division.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise division.</param>
- /// <returns>double3 result of the componentwise division.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator / (double3 lhs, double3 rhs) { return new double3 (lhs.x / rhs.x, lhs.y / rhs.y, lhs.z / rhs.z); }
-
- /// <summary>Returns the result of a componentwise division operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise division.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise division.</param>
- /// <returns>double3 result of the componentwise division.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator / (double3 lhs, double rhs) { return new double3 (lhs.x / rhs, lhs.y / rhs, lhs.z / rhs); }
-
- /// <summary>Returns the result of a componentwise division operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise division.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise division.</param>
- /// <returns>double3 result of the componentwise division.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator / (double lhs, double3 rhs) { return new double3 (lhs / rhs.x, lhs / rhs.y, lhs / rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise modulus operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise modulus.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise modulus.</param>
- /// <returns>double3 result of the componentwise modulus.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator % (double3 lhs, double3 rhs) { return new double3 (lhs.x % rhs.x, lhs.y % rhs.y, lhs.z % rhs.z); }
-
- /// <summary>Returns the result of a componentwise modulus operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise modulus.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise modulus.</param>
- /// <returns>double3 result of the componentwise modulus.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator % (double3 lhs, double rhs) { return new double3 (lhs.x % rhs, lhs.y % rhs, lhs.z % rhs); }
-
- /// <summary>Returns the result of a componentwise modulus operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise modulus.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise modulus.</param>
- /// <returns>double3 result of the componentwise modulus.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator % (double lhs, double3 rhs) { return new double3 (lhs % rhs.x, lhs % rhs.y, lhs % rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise increment operation on a double3 vector.</summary>
- /// <param name="val">Value to use when computing the componentwise increment.</param>
- /// <returns>double3 result of the componentwise increment.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator ++ (double3 val) { return new double3 (++val.x, ++val.y, ++val.z); }
-
-
- /// <summary>Returns the result of a componentwise decrement operation on a double3 vector.</summary>
- /// <param name="val">Value to use when computing the componentwise decrement.</param>
- /// <returns>double3 result of the componentwise decrement.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator -- (double3 val) { return new double3 (--val.x, --val.y, --val.z); }
-
-
- /// <summary>Returns the result of a componentwise less than operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise less than.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise less than.</param>
- /// <returns>bool3 result of the componentwise less than.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator < (double3 lhs, double3 rhs) { return new bool3 (lhs.x < rhs.x, lhs.y < rhs.y, lhs.z < rhs.z); }
-
- /// <summary>Returns the result of a componentwise less than operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise less than.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise less than.</param>
- /// <returns>bool3 result of the componentwise less than.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator < (double3 lhs, double rhs) { return new bool3 (lhs.x < rhs, lhs.y < rhs, lhs.z < rhs); }
-
- /// <summary>Returns the result of a componentwise less than operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise less than.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise less than.</param>
- /// <returns>bool3 result of the componentwise less than.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator < (double lhs, double3 rhs) { return new bool3 (lhs < rhs.x, lhs < rhs.y, lhs < rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise less or equal operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise less or equal.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise less or equal.</param>
- /// <returns>bool3 result of the componentwise less or equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator <= (double3 lhs, double3 rhs) { return new bool3 (lhs.x <= rhs.x, lhs.y <= rhs.y, lhs.z <= rhs.z); }
-
- /// <summary>Returns the result of a componentwise less or equal operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise less or equal.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise less or equal.</param>
- /// <returns>bool3 result of the componentwise less or equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator <= (double3 lhs, double rhs) { return new bool3 (lhs.x <= rhs, lhs.y <= rhs, lhs.z <= rhs); }
-
- /// <summary>Returns the result of a componentwise less or equal operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise less or equal.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise less or equal.</param>
- /// <returns>bool3 result of the componentwise less or equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator <= (double lhs, double3 rhs) { return new bool3 (lhs <= rhs.x, lhs <= rhs.y, lhs <= rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise greater than operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise greater than.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise greater than.</param>
- /// <returns>bool3 result of the componentwise greater than.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator > (double3 lhs, double3 rhs) { return new bool3 (lhs.x > rhs.x, lhs.y > rhs.y, lhs.z > rhs.z); }
-
- /// <summary>Returns the result of a componentwise greater than operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise greater than.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise greater than.</param>
- /// <returns>bool3 result of the componentwise greater than.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator > (double3 lhs, double rhs) { return new bool3 (lhs.x > rhs, lhs.y > rhs, lhs.z > rhs); }
-
- /// <summary>Returns the result of a componentwise greater than operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise greater than.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise greater than.</param>
- /// <returns>bool3 result of the componentwise greater than.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator > (double lhs, double3 rhs) { return new bool3 (lhs > rhs.x, lhs > rhs.y, lhs > rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise greater or equal operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise greater or equal.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise greater or equal.</param>
- /// <returns>bool3 result of the componentwise greater or equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator >= (double3 lhs, double3 rhs) { return new bool3 (lhs.x >= rhs.x, lhs.y >= rhs.y, lhs.z >= rhs.z); }
-
- /// <summary>Returns the result of a componentwise greater or equal operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise greater or equal.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise greater or equal.</param>
- /// <returns>bool3 result of the componentwise greater or equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator >= (double3 lhs, double rhs) { return new bool3 (lhs.x >= rhs, lhs.y >= rhs, lhs.z >= rhs); }
-
- /// <summary>Returns the result of a componentwise greater or equal operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise greater or equal.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise greater or equal.</param>
- /// <returns>bool3 result of the componentwise greater or equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator >= (double lhs, double3 rhs) { return new bool3 (lhs >= rhs.x, lhs >= rhs.y, lhs >= rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise unary minus operation on a double3 vector.</summary>
- /// <param name="val">Value to use when computing the componentwise unary minus.</param>
- /// <returns>double3 result of the componentwise unary minus.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator - (double3 val) { return new double3 (-val.x, -val.y, -val.z); }
-
-
- /// <summary>Returns the result of a componentwise unary plus operation on a double3 vector.</summary>
- /// <param name="val">Value to use when computing the componentwise unary plus.</param>
- /// <returns>double3 result of the componentwise unary plus.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 operator + (double3 val) { return new double3 (+val.x, +val.y, +val.z); }
-
-
- /// <summary>Returns the result of a componentwise equality operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise equality.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise equality.</param>
- /// <returns>bool3 result of the componentwise equality.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator == (double3 lhs, double3 rhs) { return new bool3 (lhs.x == rhs.x, lhs.y == rhs.y, lhs.z == rhs.z); }
-
- /// <summary>Returns the result of a componentwise equality operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise equality.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise equality.</param>
- /// <returns>bool3 result of the componentwise equality.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator == (double3 lhs, double rhs) { return new bool3 (lhs.x == rhs, lhs.y == rhs, lhs.z == rhs); }
-
- /// <summary>Returns the result of a componentwise equality operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise equality.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise equality.</param>
- /// <returns>bool3 result of the componentwise equality.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator == (double lhs, double3 rhs) { return new bool3 (lhs == rhs.x, lhs == rhs.y, lhs == rhs.z); }
-
-
- /// <summary>Returns the result of a componentwise not equal operation on two double3 vectors.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise not equal.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise not equal.</param>
- /// <returns>bool3 result of the componentwise not equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator != (double3 lhs, double3 rhs) { return new bool3 (lhs.x != rhs.x, lhs.y != rhs.y, lhs.z != rhs.z); }
-
- /// <summary>Returns the result of a componentwise not equal operation on a double3 vector and a double value.</summary>
- /// <param name="lhs">Left hand side double3 to use to compute componentwise not equal.</param>
- /// <param name="rhs">Right hand side double to use to compute componentwise not equal.</param>
- /// <returns>bool3 result of the componentwise not equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator != (double3 lhs, double rhs) { return new bool3 (lhs.x != rhs, lhs.y != rhs, lhs.z != rhs); }
-
- /// <summary>Returns the result of a componentwise not equal operation on a double value and a double3 vector.</summary>
- /// <param name="lhs">Left hand side double to use to compute componentwise not equal.</param>
- /// <param name="rhs">Right hand side double3 to use to compute componentwise not equal.</param>
- /// <returns>bool3 result of the componentwise not equal.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static bool3 operator != (double lhs, double3 rhs) { return new bool3 (lhs != rhs.x, lhs != rhs.y, lhs != rhs.z); }
-
-
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xxzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, x, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xyzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, y, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 xzzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(x, z, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yxzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, x, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yyzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, y, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 yzzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(y, z, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zxzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, x, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zyzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, y, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double4 zzzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double4(z, z, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, y, z); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { x = value.x; y = value.y; z = value.z; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, z, y); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { x = value.x; z = value.y; y = value.z; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 xzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(x, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, x, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, x, z); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { y = value.x; x = value.y; z = value.z; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, y, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, z, x); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { y = value.x; z = value.y; x = value.z; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 yzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(y, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zxx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zxy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, x, y); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { z = value.x; x = value.y; y = value.z; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zxz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, x, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zyx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, y, x); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { z = value.x; y = value.y; x = value.z; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zyy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zyz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, y, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zzx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, z, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zzy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, z, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double3 zzz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double3(z, z, z); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 xx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(x, x); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 xy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(x, y); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { x = value.x; y = value.y; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 xz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(x, z); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { x = value.x; z = value.y; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 yx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(y, x); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { y = value.x; x = value.y; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 yy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(y, y); }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 yz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(y, z); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { y = value.x; z = value.y; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 zx
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(z, x); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { z = value.x; x = value.y; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 zy
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(z, y); }
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- set { z = value.x; y = value.y; }
- }
-
-
- /// <summary>Swizzles the vector.</summary>
- [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
- public double2 zz
- {
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- get { return new double2(z, z); }
- }
-
-
-
- /// <summary>Returns the double element at a specified index.</summary>
- unsafe public double this[int index]
- {
- get
- {
- #if ENABLE_UNITY_COLLECTIONS_CHECKS
- if ((uint)index >= 3)
- throw new System.ArgumentException("index must be between[0...2]");
- #endif
- fixed (double3* array = &this) { return ((double*)array)[index]; }
- }
- set
- {
- #if ENABLE_UNITY_COLLECTIONS_CHECKS
- if ((uint)index >= 3)
- throw new System.ArgumentException("index must be between[0...2]");
- #endif
- fixed (double* array = &x) { array[index] = value; }
- }
- }
-
- /// <summary>Returns true if the double3 is equal to a given double3, false otherwise.</summary>
- /// <param name="rhs">Right hand side argument to compare equality with.</param>
- /// <returns>The result of the equality comparison.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public bool Equals(double3 rhs) { return x == rhs.x && y == rhs.y && z == rhs.z; }
-
- /// <summary>Returns true if the double3 is equal to a given double3, false otherwise.</summary>
- /// <param name="o">Right hand side argument to compare equality with.</param>
- /// <returns>The result of the equality comparison.</returns>
- public override bool Equals(object o) { return o is double3 converted && Equals(converted); }
-
-
- /// <summary>Returns a hash code for the double3.</summary>
- /// <returns>The computed hash code.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public override int GetHashCode() { return (int)math.hash(this); }
-
-
- /// <summary>Returns a string representation of the double3.</summary>
- /// <returns>String representation of the value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public override string ToString()
- {
- return string.Format("double3({0}, {1}, {2})", x, y, z);
- }
-
- /// <summary>Returns a string representation of the double3 using a specified format and culture-specific format information.</summary>
- /// <param name="format">Format string to use during string formatting.</param>
- /// <param name="formatProvider">Format provider to use during string formatting.</param>
- /// <returns>String representation of the value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public string ToString(string format, IFormatProvider formatProvider)
- {
- return string.Format("double3({0}, {1}, {2})", x.ToString(format, formatProvider), y.ToString(format, formatProvider), z.ToString(format, formatProvider));
- }
-
- internal sealed class DebuggerProxy
- {
- public double x;
- public double y;
- public double z;
- public DebuggerProxy(double3 v)
- {
- x = v.x;
- y = v.y;
- z = v.z;
- }
- }
-
- }
-
- public static partial class math
- {
- /// <summary>Returns a double3 vector constructed from three double values.</summary>
- /// <param name="x">The constructed vector's x component will be set to this value.</param>
- /// <param name="y">The constructed vector's y component will be set to this value.</param>
- /// <param name="z">The constructed vector's z component will be set to this value.</param>
- /// <returns>double3 constructed from arguments.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(double x, double y, double z) { return new double3(x, y, z); }
-
- /// <summary>Returns a double3 vector constructed from a double value and a double2 vector.</summary>
- /// <param name="x">The constructed vector's x component will be set to this value.</param>
- /// <param name="yz">The constructed vector's yz components will be set to this value.</param>
- /// <returns>double3 constructed from arguments.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(double x, double2 yz) { return new double3(x, yz); }
-
- /// <summary>Returns a double3 vector constructed from a double2 vector and a double value.</summary>
- /// <param name="xy">The constructed vector's xy components will be set to this value.</param>
- /// <param name="z">The constructed vector's z component will be set to this value.</param>
- /// <returns>double3 constructed from arguments.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(double2 xy, double z) { return new double3(xy, z); }
-
- /// <summary>Returns a double3 vector constructed from a double3 vector.</summary>
- /// <param name="xyz">The constructed vector's xyz components will be set to this value.</param>
- /// <returns>double3 constructed from arguments.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(double3 xyz) { return new double3(xyz); }
-
- /// <summary>Returns a double3 vector constructed from a single double value by assigning it to every component.</summary>
- /// <param name="v">double to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(double v) { return new double3(v); }
-
- /// <summary>Returns a double3 vector constructed from a single bool value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">bool to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(bool v) { return new double3(v); }
-
- /// <summary>Return a double3 vector constructed from a bool3 vector by componentwise conversion.</summary>
- /// <param name="v">bool3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(bool3 v) { return new double3(v); }
-
- /// <summary>Returns a double3 vector constructed from a single int value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">int to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(int v) { return new double3(v); }
-
- /// <summary>Return a double3 vector constructed from a int3 vector by componentwise conversion.</summary>
- /// <param name="v">int3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(int3 v) { return new double3(v); }
-
- /// <summary>Returns a double3 vector constructed from a single uint value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">uint to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(uint v) { return new double3(v); }
-
- /// <summary>Return a double3 vector constructed from a uint3 vector by componentwise conversion.</summary>
- /// <param name="v">uint3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(uint3 v) { return new double3(v); }
-
- /// <summary>Returns a double3 vector constructed from a single half value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">half to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(half v) { return new double3(v); }
-
- /// <summary>Return a double3 vector constructed from a half3 vector by componentwise conversion.</summary>
- /// <param name="v">half3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(half3 v) { return new double3(v); }
-
- /// <summary>Returns a double3 vector constructed from a single float value by converting it to double and assigning it to every component.</summary>
- /// <param name="v">float to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(float v) { return new double3(v); }
-
- /// <summary>Return a double3 vector constructed from a float3 vector by componentwise conversion.</summary>
- /// <param name="v">float3 to convert to double3</param>
- /// <returns>Converted value.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 double3(float3 v) { return new double3(v); }
-
- /// <summary>Returns a uint hash code of a double3 vector.</summary>
- /// <param name="v">Vector value to hash.</param>
- /// <returns>uint hash of the argument.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static uint hash(double3 v)
- {
- return csum(fold_to_uint(v) * uint3(0xAF0F3103u, 0xE4A056C7u, 0x841D8225u)) + 0xC9393C7Du;
- }
-
- /// <summary>
- /// Returns a uint3 vector hash code of a double3 vector.
- /// When multiple elements are to be hashes together, it can more efficient to calculate and combine wide hash
- /// that are only reduced to a narrow uint hash at the very end instead of at every step.
- /// </summary>
- /// <param name="v">Vector value to hash.</param>
- /// <returns>uint3 hash of the argument.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static uint3 hashwide(double3 v)
- {
- return (fold_to_uint(v) * uint3(0xD42EAFA3u, 0xD9AFD06Du, 0x97A65421u)) + 0x7809205Fu;
- }
-
- /// <summary>Returns the result of specified shuffling of the components from two double3 vectors into a double value.</summary>
- /// <param name="left">double3 to use as the left argument of the shuffle operation.</param>
- /// <param name="right">double3 to use as the right argument of the shuffle operation.</param>
- /// <param name="x">The ShuffleComponent to use when setting the resulting double.</param>
- /// <returns>double result of the shuffle operation.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double shuffle(double3 left, double3 right, ShuffleComponent x)
- {
- return select_shuffle_component(left, right, x);
- }
-
- /// <summary>Returns the result of specified shuffling of the components from two double3 vectors into a double2 vector.</summary>
- /// <param name="left">double3 to use as the left argument of the shuffle operation.</param>
- /// <param name="right">double3 to use as the right argument of the shuffle operation.</param>
- /// <param name="x">The ShuffleComponent to use when setting the resulting double2 x component.</param>
- /// <param name="y">The ShuffleComponent to use when setting the resulting double2 y component.</param>
- /// <returns>double2 result of the shuffle operation.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double2 shuffle(double3 left, double3 right, ShuffleComponent x, ShuffleComponent y)
- {
- return double2(
- select_shuffle_component(left, right, x),
- select_shuffle_component(left, right, y));
- }
-
- /// <summary>Returns the result of specified shuffling of the components from two double3 vectors into a double3 vector.</summary>
- /// <param name="left">double3 to use as the left argument of the shuffle operation.</param>
- /// <param name="right">double3 to use as the right argument of the shuffle operation.</param>
- /// <param name="x">The ShuffleComponent to use when setting the resulting double3 x component.</param>
- /// <param name="y">The ShuffleComponent to use when setting the resulting double3 y component.</param>
- /// <param name="z">The ShuffleComponent to use when setting the resulting double3 z component.</param>
- /// <returns>double3 result of the shuffle operation.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double3 shuffle(double3 left, double3 right, ShuffleComponent x, ShuffleComponent y, ShuffleComponent z)
- {
- return double3(
- select_shuffle_component(left, right, x),
- select_shuffle_component(left, right, y),
- select_shuffle_component(left, right, z));
- }
-
- /// <summary>Returns the result of specified shuffling of the components from two double3 vectors into a double4 vector.</summary>
- /// <param name="left">double3 to use as the left argument of the shuffle operation.</param>
- /// <param name="right">double3 to use as the right argument of the shuffle operation.</param>
- /// <param name="x">The ShuffleComponent to use when setting the resulting double4 x component.</param>
- /// <param name="y">The ShuffleComponent to use when setting the resulting double4 y component.</param>
- /// <param name="z">The ShuffleComponent to use when setting the resulting double4 z component.</param>
- /// <param name="w">The ShuffleComponent to use when setting the resulting double4 w component.</param>
- /// <returns>double4 result of the shuffle operation.</returns>
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static double4 shuffle(double3 left, double3 right, ShuffleComponent x, ShuffleComponent y, ShuffleComponent z, ShuffleComponent w)
- {
- return double4(
- select_shuffle_component(left, right, x),
- select_shuffle_component(left, right, y),
- select_shuffle_component(left, right, z),
- select_shuffle_component(left, right, w));
- }
-
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- internal static double select_shuffle_component(double3 a, double3 b, ShuffleComponent component)
- {
- switch(component)
- {
- case ShuffleComponent.LeftX:
- return a.x;
- case ShuffleComponent.LeftY:
- return a.y;
- case ShuffleComponent.LeftZ:
- return a.z;
- case ShuffleComponent.RightX:
- return b.x;
- case ShuffleComponent.RightY:
- return b.y;
- case ShuffleComponent.RightZ:
- return b.z;
- default:
- throw new System.ArgumentException("Invalid shuffle component: " + component);
- }
- }
-
- }
- }
|