| @@ -168,6 +168,7 @@ Global | |||
| {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -179,6 +180,7 @@ Global | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|PS3.Build.0 = Release|PS3 | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -204,6 +206,7 @@ Global | |||
| {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -215,6 +218,7 @@ Global | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|PS3.Build.0 = Release|PS3 | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -226,6 +230,7 @@ Global | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -237,6 +242,7 @@ Global | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Release|PS3.Build.0 = Release|PS3 | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -248,6 +254,7 @@ Global | |||
| {83D3B207-C601-4025-8F41-01DEDC354661}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -259,6 +266,7 @@ Global | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|PS3.Build.0 = Release|PS3 | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -270,6 +278,7 @@ Global | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -281,6 +290,7 @@ Global | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|PS3.Build.0 = Release|PS3 | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -292,6 +302,7 @@ Global | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -303,6 +314,7 @@ Global | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Mixed Platforms.Deploy.0 = Release|Win32 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|PS3.Build.0 = Release|PS3 | |||
| @@ -315,6 +327,7 @@ Global | |||
| {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -326,6 +339,7 @@ Global | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|PS3.Build.0 = Release|PS3 | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -337,6 +351,7 @@ Global | |||
| {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -348,6 +363,7 @@ Global | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|PS3.Build.0 = Release|PS3 | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -359,6 +375,7 @@ Global | |||
| {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -370,6 +387,7 @@ Global | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|PS3.Build.0 = Release|PS3 | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -381,6 +399,7 @@ Global | |||
| {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -392,6 +411,7 @@ Global | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|PS3.Build.0 = Release|PS3 | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -403,6 +423,7 @@ Global | |||
| {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -414,6 +435,7 @@ Global | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|PS3.Build.0 = Release|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -425,6 +447,7 @@ Global | |||
| {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Win32.Build.0 = Debug|Win32 | |||
| @@ -433,6 +456,7 @@ Global | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Win32.ActiveCfg = Release|Win32 | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Win32.Build.0 = Release|Win32 | |||
| @@ -441,6 +465,7 @@ Global | |||
| {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -452,6 +477,7 @@ Global | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|PS3.Build.0 = Release|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -463,6 +489,7 @@ Global | |||
| {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -474,6 +501,7 @@ Global | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|PS3.Build.0 = Release|PS3 | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -485,6 +513,7 @@ Global | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -496,6 +525,7 @@ Global | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|PS3.Build.0 = Release|PS3 | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -507,6 +537,7 @@ Global | |||
| {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -518,6 +549,7 @@ Global | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|PS3.Build.0 = Release|PS3 | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -529,6 +561,7 @@ Global | |||
| {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -540,6 +573,7 @@ Global | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|PS3.Build.0 = Release|PS3 | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -551,6 +585,7 @@ Global | |||
| {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -562,6 +597,7 @@ Global | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|PS3.Build.0 = Release|PS3 | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -573,6 +609,7 @@ Global | |||
| {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Any CPU.ActiveCfg = Debug|Win32 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|PS3.ActiveCfg = Debug|PS3 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|PS3.Build.0 = Debug|PS3 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| @@ -584,6 +621,7 @@ Global | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Any CPU.ActiveCfg = Release|Win32 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|PS3.ActiveCfg = Release|PS3 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|PS3.Build.0 = Release|PS3 | |||
| {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Win32.ActiveCfg = Release|Win32 | |||
| @@ -636,8 +674,8 @@ Global | |||
| {834852DB-EDB6-4FD0-BCF9-45CD01126962}.Release|Xbox 360.Build.0 = Release|Xbox 360 | |||
| {834852DB-EDB6-4FD0-BCF9-45CD01126962}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Any CPU.ActiveCfg = Debug|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Mixed Platforms.ActiveCfg = Debug|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Mixed Platforms.Build.0 = Debug|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|PS3.ActiveCfg = Debug|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Win32.Build.0 = Debug|Win32 | |||
| @@ -645,8 +683,8 @@ Global | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|x64.Build.0 = Debug|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Debug|Xbox 360.ActiveCfg = Debug|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Any CPU.ActiveCfg = Release|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Mixed Platforms.ActiveCfg = Release|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Mixed Platforms.Build.0 = Release|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|PS3.ActiveCfg = Release|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Win32.ActiveCfg = Release|Win32 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Win32.Build.0 = Release|Win32 | |||
| @@ -654,8 +692,8 @@ Global | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|x64.Build.0 = Release|x64 | |||
| {FAF82AD2-D9F4-4694-9A01-103BC5B771B4}.Release|Xbox 360.ActiveCfg = Release|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Any CPU.ActiveCfg = Debug|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Mixed Platforms.ActiveCfg = Debug|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Mixed Platforms.Build.0 = Debug|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|PS3.ActiveCfg = Debug|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Win32.ActiveCfg = Debug|Win32 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Win32.Build.0 = Debug|Win32 | |||
| @@ -663,8 +701,8 @@ Global | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|x64.Build.0 = Debug|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Debug|Xbox 360.ActiveCfg = Debug|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|Any CPU.ActiveCfg = Release|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|Mixed Platforms.ActiveCfg = Release|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|Mixed Platforms.Build.0 = Release|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|Mixed Platforms.Build.0 = Release|Win32 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|PS3.ActiveCfg = Release|x64 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|Win32.ActiveCfg = Release|Win32 | |||
| {7CE9FE12-E4AB-4A22-90D4-2C15F0C30D4E}.Release|Win32.Build.0 = Release|Win32 | |||
| @@ -688,8 +726,8 @@ Global | |||
| {9C66B179-0737-4BDA-AB42-2ADE478A9008} = {08C6A854-533D-4A1E-924E-C4A62281869F} | |||
| {EF1A4E80-63FA-4EB0-B834-12B6C500F31C} = {08C6A854-533D-4A1E-924E-C4A62281869F} | |||
| {17F0F184-4436-4D08-B8AA-16572EA238DB} = {2F87CEAB-4818-443C-A5E3-6C34E7D967EC} | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA} = {1AFD580B-98B8-4689-B661-38C41132C60E} | |||
| {83D3B207-C601-4025-8F41-01DEDC354661} = {1AFD580B-98B8-4689-B661-38C41132C60E} | |||
| {9E62F2FE-3408-4EAE-8238-FD84238CEEDA} = {1AFD580B-98B8-4689-B661-38C41132C60E} | |||
| {B1E10086-A1DA-401A-834D-969C9DBB5CC1} = {E0491194-35E3-4513-9D31-608EA3165ECF} | |||
| {80F81C11-8DA2-4990-91CB-9807783BA46E} = {E0491194-35E3-4513-9D31-608EA3165ECF} | |||
| {EE203B88-44CF-4859-9D42-7A1F43FECB52} = {E0491194-35E3-4513-9D31-608EA3165ECF} | |||
| @@ -44,9 +44,9 @@ | |||
| %token T_COLOR T_BGCOLOR | |||
| %token T_TRANSLATEX T_ROTATEX T_TAPERX T_SCALEX T_MIRRORX | |||
| %token T_TRANSLATEY T_ROTATEY T_TAPERY T_SCALEY T_MIRRORY | |||
| %token T_TRANSLATEZ T_ROTATEZ T_TAPERZ T_SCALEZ T_MIRRORZ | |||
| %token T_TRANSLATEX T_ROTATEX T_TAPERX T_TWISTX T_SHEARX T_STRETCHX T_BENDXY T_BENDXZ T_SCALEX T_MIRRORX | |||
| %token T_TRANSLATEY T_ROTATEY T_TAPERY T_TWISTY T_SHEARY T_STRETCHY T_BENDYX T_BENDYZ T_SCALEY T_MIRRORY | |||
| %token T_TRANSLATEZ T_ROTATEZ T_TAPERZ T_TWISTZ T_SHEARZ T_STRETCHZ T_BENDZX T_BENDZY T_SCALEZ T_MIRRORZ | |||
| %token T_TRANSLATE T_SCALE T_TOGGLESCALEWINDING T_RADIALJITTER | |||
| %token T_CSGUNION T_CSGSUBSTRACT T_CSGSUBSTRACTLOSS T_CSGAND T_CSGXOR | |||
| %token T_CHAMFER | |||
| @@ -126,8 +126,29 @@ transform_command: | |||
| | T_ROTATEY args1 { mc.m_mesh.RotateY($2.f0); } | |||
| | T_ROTATEZ args1 { mc.m_mesh.RotateZ($2.f0); } | |||
| | T_TAPERX args3 { mc.m_mesh.TaperX($2.f0, $2.f1, $2.f2); } | |||
| | T_TAPERX args4 { mc.m_mesh.TaperX($2.f0, $2.f1, $2.f2, $2.f3); } | |||
| | T_TAPERY args3 { mc.m_mesh.TaperY($2.f0, $2.f1, $2.f2); } | |||
| | T_TAPERY args4 { mc.m_mesh.TaperY($2.f0, $2.f1, $2.f2, $2.f3); } | |||
| | T_TAPERZ args3 { mc.m_mesh.TaperZ($2.f0, $2.f1, $2.f2); } | |||
| | T_TAPERZ args4 { mc.m_mesh.TaperZ($2.f0, $2.f1, $2.f2, $2.f3); } | |||
| | T_TWISTX args2 { mc.m_mesh.TwistX($2.f0, $2.f1); } | |||
| | T_TWISTY args2 { mc.m_mesh.TwistY($2.f0, $2.f1); } | |||
| | T_TWISTZ args2 { mc.m_mesh.TwistZ($2.f0, $2.f1); } | |||
| | T_SHEARX args3 { mc.m_mesh.ShearX($2.f0, $2.f1, $2.f2); } | |||
| | T_SHEARX args4 { mc.m_mesh.ShearX($2.f0, $2.f1, $2.f2, $2.f3); } | |||
| | T_SHEARY args3 { mc.m_mesh.ShearY($2.f0, $2.f1, $2.f2); } | |||
| | T_SHEARY args4 { mc.m_mesh.ShearY($2.f0, $2.f1, $2.f2, $2.f3); } | |||
| | T_SHEARZ args3 { mc.m_mesh.ShearZ($2.f0, $2.f1, $2.f2); } | |||
| | T_SHEARZ args4 { mc.m_mesh.ShearZ($2.f0, $2.f1, $2.f2, $2.f3); } | |||
| | T_STRETCHX args3 { mc.m_mesh.StretchX($2.f0, $2.f1, $2.f2); } | |||
| | T_STRETCHY args3 { mc.m_mesh.StretchY($2.f0, $2.f1, $2.f2); } | |||
| | T_STRETCHZ args3 { mc.m_mesh.StretchZ($2.f0, $2.f1, $2.f2); } | |||
| | T_BENDXY args2 { mc.m_mesh.BendXY($2.f0, $2.f1); } | |||
| | T_BENDXZ args2 { mc.m_mesh.BendXZ($2.f0, $2.f1); } | |||
| | T_BENDYX args2 { mc.m_mesh.BendYX($2.f0, $2.f1); } | |||
| | T_BENDYZ args2 { mc.m_mesh.BendYZ($2.f0, $2.f1); } | |||
| | T_BENDZX args2 { mc.m_mesh.BendZX($2.f0, $2.f1); } | |||
| | T_BENDZY args2 { mc.m_mesh.BendZY($2.f0, $2.f1); } | |||
| | T_SCALEX args1 { mc.m_mesh.Scale(vec3($2.f0, 1.0, 1.0)); } | |||
| | T_SCALEY args1 { mc.m_mesh.Scale(vec3(1.0, $2.f0, 1.0)); } | |||
| | T_SCALEZ args1 { mc.m_mesh.Scale(vec3(1.0, 1.0, $2.f0)); } | |||
| @@ -62,6 +62,21 @@ rz { return token::T_ROTATEZ; } | |||
| tax { return token::T_TAPERX; } | |||
| tay { return token::T_TAPERY; } | |||
| taz { return token::T_TAPERZ; } | |||
| twx { return token::T_TWISTX; } | |||
| twy { return token::T_TWISTY; } | |||
| twz { return token::T_TWISTZ; } | |||
| shx { return token::T_SHEARX; } | |||
| shy { return token::T_SHEARY; } | |||
| shz { return token::T_SHEARZ; } | |||
| stx { return token::T_STRETCHX; } | |||
| sty { return token::T_STRETCHY; } | |||
| stz { return token::T_STRETCHZ; } | |||
| bdxy { return token::T_BENDXY; } | |||
| bdxz { return token::T_BENDXZ; } | |||
| bdyx { return token::T_BENDYX; } | |||
| bdyz { return token::T_BENDYZ; } | |||
| bdzx { return token::T_BENDZX; } | |||
| bdzy { return token::T_BENDZY; } | |||
| sx { return token::T_SCALEX; } | |||
| sy { return token::T_SCALEY; } | |||
| sz { return token::T_SCALEZ; } | |||
| @@ -929,34 +929,78 @@ void EasyMesh::RadialJitter(float r) | |||
| } | |||
| //----------------------------------------------------------------------------- | |||
| void EasyMesh::TaperX(float y, float z, float xoff) | |||
| { | |||
| /* FIXME: this code breaks normals! */ | |||
| for (int i = m_cursors.Last().m1; i < m_vert.Count(); i++) | |||
| { | |||
| m_vert[i].m1.y *= 1.f + (y * abs(m_vert[i].m1.x) + xoff); | |||
| m_vert[i].m1.z *= 1.f + (z * abs(m_vert[i].m1.x) + xoff); | |||
| } | |||
| } | |||
| void EasyMesh::TaperX(float ny, float nz, float xoff, int absolute) { DoMeshTransform(MeshTransform::Taper, Axis::X, Axis::X, ny, nz, xoff, absolute); } | |||
| void EasyMesh::TaperY(float nx, float nz, float yoff, int absolute) { DoMeshTransform(MeshTransform::Taper, Axis::Y, Axis::Y, nz, nx, yoff, absolute); } | |||
| void EasyMesh::TaperZ(float nx, float ny, float zoff, int absolute) { DoMeshTransform(MeshTransform::Taper, Axis::Z, Axis::Z, nx, ny, zoff, absolute); } | |||
| //----------------------------------------------------------------------------- | |||
| void EasyMesh::TaperY(float x, float z, float yoff) | |||
| { | |||
| for (int i = m_cursors.Last().m1; i < m_vert.Count(); i++) | |||
| { | |||
| m_vert[i].m1.x *= 1.f + (x * abs(m_vert[i].m1.y) + yoff); | |||
| m_vert[i].m1.z *= 1.f + (z * abs(m_vert[i].m1.y) + yoff); | |||
| } | |||
| } | |||
| void EasyMesh::TwistX(float t, float toff) { DoMeshTransform(MeshTransform::Twist, Axis::X, Axis::X, t, t, toff, 0); } | |||
| void EasyMesh::TwistY(float t, float toff) { DoMeshTransform(MeshTransform::Twist, Axis::Y, Axis::Y, t, t, toff, 0); } | |||
| void EasyMesh::TwistZ(float t, float toff) { DoMeshTransform(MeshTransform::Twist, Axis::Z, Axis::Z, t, t, toff, 0); } | |||
| //----------------------------------------------------------------------------- | |||
| void EasyMesh::ShearX(float ny, float nz, float xoff, int absolute) { DoMeshTransform(MeshTransform::Shear, Axis::X, Axis::X, ny, nz, xoff, absolute); } | |||
| void EasyMesh::ShearY(float nx, float nz, float yoff, int absolute) { DoMeshTransform(MeshTransform::Shear, Axis::Y, Axis::Y, nz, nx, yoff, absolute); } | |||
| void EasyMesh::ShearZ(float nx, float ny, float zoff, int absolute) { DoMeshTransform(MeshTransform::Shear, Axis::Z, Axis::Z, nx, ny, zoff, absolute); } | |||
| //----------------------------------------------------------------------------- | |||
| void EasyMesh::StretchX(float ny, float nz, float xoff) { DoMeshTransform(MeshTransform::Stretch, Axis::X, Axis::X, ny, nz, xoff, 0); } | |||
| void EasyMesh::StretchY(float nx, float nz, float yoff) { DoMeshTransform(MeshTransform::Stretch, Axis::Y, Axis::Y, nz, nx, yoff, 0); } | |||
| void EasyMesh::StretchZ(float nx, float ny, float zoff) { DoMeshTransform(MeshTransform::Stretch, Axis::Z, Axis::Z, nx, ny, zoff, 0); } | |||
| //----------------------------------------------------------------------------- | |||
| void EasyMesh::BendXY(float t, float toff) { DoMeshTransform(MeshTransform::Bend, Axis::X, Axis::Y, t, t, toff, 0); } | |||
| void EasyMesh::BendXZ(float t, float toff) { DoMeshTransform(MeshTransform::Bend, Axis::X, Axis::Z, t, t, toff, 0); } | |||
| void EasyMesh::BendYX(float t, float toff) { DoMeshTransform(MeshTransform::Bend, Axis::Y, Axis::X, t, t, toff, 0); } | |||
| void EasyMesh::BendYZ(float t, float toff) { DoMeshTransform(MeshTransform::Bend, Axis::Y, Axis::Z, t, t, toff, 0); } | |||
| void EasyMesh::BendZX(float t, float toff) { DoMeshTransform(MeshTransform::Bend, Axis::Z, Axis::X, t, t, toff, 0); } | |||
| void EasyMesh::BendZY(float t, float toff) { DoMeshTransform(MeshTransform::Bend, Axis::Z, Axis::Y, t, t, toff, 0); } | |||
| //----------------------------------------------------------------------------- | |||
| void EasyMesh::TaperZ(float x, float y, float zoff) | |||
| void EasyMesh::DoMeshTransform(MeshTransform ct, Axis axis0, Axis axis1, float n0, float n1, float noff, int absolute) | |||
| { | |||
| for (int i = m_cursors.Last().m1; i < m_vert.Count(); i++) | |||
| { | |||
| m_vert[i].m1.x *= 1.f + (x * abs(m_vert[i].m1.z) + zoff); | |||
| m_vert[i].m1.y *= 1.f + (y * abs(m_vert[i].m1.z) + zoff); | |||
| switch (ct) | |||
| { | |||
| case MeshTransform::Taper: | |||
| { | |||
| float value = m_vert[i].m1[axis0]; | |||
| if (absolute) value = abs(value); | |||
| m_vert[i].m1[(axis0 + 1) % 3] *= max(0.f, 1.f + (n0 * value + noff)); | |||
| m_vert[i].m1[(axis0 + 2) % 3] *= max(0.f, 1.f + (n1 * value + noff)); | |||
| break; | |||
| } | |||
| case MeshTransform::Twist: | |||
| { | |||
| vec3 rotaxis = vec3(1.f); rotaxis[(axis0 + 1) % 3] = .0f; rotaxis[(axis0 + 2) % 3] = .0f; | |||
| m_vert[i].m1 = mat3::rotate(m_vert[i].m1[axis0] * n0 + noff, rotaxis) * m_vert[i].m1; | |||
| break; | |||
| } | |||
| case MeshTransform::Shear: | |||
| { | |||
| float value = m_vert[i].m1[axis0]; | |||
| if (absolute) value = abs(value); | |||
| m_vert[i].m1[(axis0 + 1) % 3] += (n0 * value + noff); | |||
| m_vert[i].m1[(axis0 + 2) % 3] += (n1 * value + noff); | |||
| break; | |||
| } | |||
| case MeshTransform::Stretch: | |||
| { | |||
| //float value = abs(m_vert[i].m1[axis0]); | |||
| //m_vert[i].m1[(axis0 + 1) % 3] += (lol::pow(value, n0) + noff); | |||
| //m_vert[i].m1[(axis0 + 2) % 3] += (lol::pow(value, n1) + noff); | |||
| break; | |||
| } | |||
| case MeshTransform::Bend: | |||
| { | |||
| vec3 rotaxis = vec3(1.f); rotaxis[(axis1 + 1) % 3] = .0f; rotaxis[(axis1 + 2) % 3] = .0f; | |||
| m_vert[i].m1 = mat3::rotate(m_vert[i].m1[axis0] * n0 + noff, rotaxis) * m_vert[i].m1; | |||
| break; | |||
| } | |||
| } | |||
| } | |||
| ComputeNormals(m_cursors.Last().m2, m_indices.Count() - m_cursors.Last().m2); | |||
| } | |||
| //----------------------------------------------------------------------------- | |||
| @@ -78,6 +78,20 @@ private: | |||
| Array<int> master_list; | |||
| }; | |||
| struct Axis | |||
| { | |||
| enum Value | |||
| { | |||
| X, | |||
| Y, | |||
| Z | |||
| } | |||
| m_value; | |||
| inline Axis(Value v) : m_value(v) {} | |||
| inline operator Value() { return m_value; } | |||
| }; | |||
| struct MeshBuildOperation | |||
| { | |||
| enum Value | |||
| @@ -184,28 +198,81 @@ public: | |||
| - r : jitter maximum value. | |||
| */ | |||
| void RadialJitter(float r); | |||
| //TODO : twist | |||
| //TODO : bend | |||
| //TODO : stretch | |||
| //TODO : shear | |||
| /* [cmd:tax] multiply y&z by (1.0 + (n * x + xoff)) | |||
| - y : value of n for y. | |||
| - z : value of n for z. | |||
| /* [cmd:tax] multiply axis y&z by x as y *= (1.0 + (ny * x + xoff)) | |||
| - ny : value of n for y. | |||
| - nz : value of n for z. | |||
| - xoff : value of xoff. | |||
| - absolute (def:1) : if (1) Multiply will use an absolute x. | |||
| */ | |||
| void TaperX(float ny, float nz, float xoff, int absolute=1); | |||
| /* [cmd:tay] Same as TaperX, with Y */ | |||
| void TaperY(float nx, float nz, float yoff, int absolute=1); | |||
| /* [cmd:taz] Same as TaperX, with Z */ | |||
| void TaperZ(float nx, float ny, float zoff, int absolute=1); | |||
| /* [cmd:twx] Twist vertices around x axis with x as rotation value as p = (RotateX(x * t + toff) * p) | |||
| - t : Angle multiplier. | |||
| - toff : Applied offset. | |||
| */ | |||
| void TwistX(float t, float toff); | |||
| /* [cmd:twy] Same as TwistX, with Y */ | |||
| void TwistY(float t, float toff); | |||
| /* [cmd:twz] Same as TwistX, with Z */ | |||
| void TwistZ(float t, float toff); | |||
| /* [cmd:shx] Shear vertices using x value as shear quantity as y += (ny * x + xoff) | |||
| - ny : Value of n for y. | |||
| - nz : Value of n for z. | |||
| - xoff : Value of xoff. | |||
| - absolute (def:1) : if (1) Multiply will use an absolute x. | |||
| */ | |||
| void TaperX(float y, float z, float xoff); | |||
| /* [cmd:tay] multiply x&z by (1.0 + (n * y + yoff)) | |||
| - x : value of n for x. | |||
| - z : value of n for z. | |||
| - yoff : value of yoff. | |||
| void ShearX(float ny, float nz, float xoff, int absolute=1); | |||
| /* [cmd:shy] Same as ShearX, with Y */ | |||
| void ShearY(float nx, float nz, float yoff, int absolute=1); | |||
| /* [cmd:shz] Same as ShearX, with Z */ | |||
| void ShearZ(float nx, float ny, float zoff, int absolute=1); | |||
| /* [cmd:stx] Stretch vertices using x value as stretch quantity as y += (pow(x, ny) + xoff) | |||
| - ny : Value of n for y. | |||
| - nz : Value of n for z. | |||
| - xoff : Value of xoff. | |||
| */ | |||
| void TaperY(float x, float z, float yoff); | |||
| /* [cmd:taz] multiply x&y by (1.0 + (n * z + zoff)) | |||
| - x : value of n for x. | |||
| - y : value of n for y. | |||
| - zoff : value of zoff. | |||
| void StretchX(float ny, float nz, float xoff); | |||
| /* [cmd:sty] Same as StretchX, with Y */ | |||
| void StretchY(float nx, float nz, float yoff); | |||
| /* [cmd:stz] Same as StretchX, with Z */ | |||
| void StretchZ(float nx, float ny, float zoff); | |||
| /* [cmd:bdxy] Bend vertices using x as bend quantity along y axis using p = (RotateY(x * t + toff) * p) | |||
| - t : Angle multiplier. | |||
| - xoff : Applied offset. | |||
| */ | |||
| void TaperZ(float x, float y, float zoff); | |||
| void BendXY(float t, float toff); | |||
| /* [cmd:bdxz] Same as BendXY, with X & Z */ | |||
| void BendXZ(float t, float toff); | |||
| /* [cmd:bdyx] Same as BendXY, with Y & X */ | |||
| void BendYX(float t, float toff); | |||
| /* [cmd:bdyz] Same as BendXY, with Y & Z */ | |||
| void BendYZ(float t, float toff); | |||
| /* [cmd:bdzx] Same as BendXY, with Z & X */ | |||
| void BendZX(float t, float toff); | |||
| /* [cmd:bdzy] Same as BendXY, with Z & Y */ | |||
| void BendZY(float t, float toff); | |||
| private: | |||
| struct MeshTransform | |||
| { | |||
| enum Value | |||
| { | |||
| Taper, | |||
| Twist, | |||
| Bend, | |||
| Stretch, | |||
| Shear | |||
| } | |||
| m_value; | |||
| inline MeshTransform(Value v) : m_value(v) {} | |||
| inline operator Value() { return m_value; } | |||
| }; | |||
| void DoMeshTransform(MeshTransform ct, Axis axis0, Axis axis1, float n0, float n1, float noff, int absolute); | |||
| public: | |||
| /* [cmd:s/sx/sy/sz] Scale vertices | |||
| - s : scale quantity. | |||
| */ | |||
| @@ -1,8 +1,8 @@ | |||
| /* A Bison parser, made by GNU Bison 2.5. */ | |||
| /* A Bison parser, made by GNU Bison 2.4.2. */ | |||
| /* Skeleton implementation for Bison LALR(1) parsers in C++ | |||
| Copyright (C) 2002-2011 Free Software Foundation, Inc. | |||
| Copyright (C) 2002-2010 Free Software Foundation, Inc. | |||
| This program is free software: you can redistribute it and/or modify | |||
| it under the terms of the GNU General Public License as published by | |||
| @@ -546,310 +546,457 @@ namespace lol { | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 129 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.TaperY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| { mc.m_mesh.TaperX((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 28: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 130 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.TaperZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| { mc.m_mesh.TaperY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 29: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 131 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3((yysemantic_stack_[(2) - (2)].args).f0, 1.0, 1.0)); } | |||
| { mc.m_mesh.TaperY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 30: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 132 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3(1.0, (yysemantic_stack_[(2) - (2)].args).f0, 1.0)); } | |||
| { mc.m_mesh.TaperZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 31: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 133 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3(1.0, 1.0, (yysemantic_stack_[(2) - (2)].args).f0)); } | |||
| { mc.m_mesh.TaperZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 32: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 134 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2)); } | |||
| { mc.m_mesh.TwistX((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 33: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 135 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.MirrorX(); } | |||
| { mc.m_mesh.TwistY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 34: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 136 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.MirrorY(); } | |||
| { mc.m_mesh.TwistZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 35: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 137 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.MirrorZ(); } | |||
| { mc.m_mesh.ShearX((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 36: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 138 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.RadialJitter((yysemantic_stack_[(2) - (2)].args).f0); } | |||
| { mc.m_mesh.ShearX((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 37: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 139 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.ToggleScaleWinding(); } | |||
| { mc.m_mesh.ShearY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 38: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 140 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgUnion(); } | |||
| { mc.m_mesh.ShearY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 39: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 141 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgSubstract(); } | |||
| { mc.m_mesh.ShearZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 40: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 142 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgSubstractLoss(); } | |||
| { mc.m_mesh.ShearZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 41: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 143 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgAnd(); } | |||
| { mc.m_mesh.StretchX((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 42: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 144 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgXor(); } | |||
| { mc.m_mesh.StretchY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 43: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 145 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.StretchZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 44: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 146 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.BendXY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 45: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 147 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.BendXZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 46: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 148 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.BendYX((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 47: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 149 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.BendYZ((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 48: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 150 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.BendZX((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 49: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 151 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.BendZY((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 50: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 152 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3((yysemantic_stack_[(2) - (2)].args).f0, 1.0, 1.0)); } | |||
| break; | |||
| case 51: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 153 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3(1.0, (yysemantic_stack_[(2) - (2)].args).f0, 1.0)); } | |||
| break; | |||
| case 52: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 154 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3(1.0, 1.0, (yysemantic_stack_[(2) - (2)].args).f0)); } | |||
| break; | |||
| case 53: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 155 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.Scale(vec3((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2)); } | |||
| break; | |||
| case 54: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 156 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.MirrorX(); } | |||
| break; | |||
| case 55: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 157 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.MirrorY(); } | |||
| break; | |||
| case 56: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 158 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.MirrorZ(); } | |||
| break; | |||
| case 57: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 159 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.RadialJitter((yysemantic_stack_[(2) - (2)].args).f0); } | |||
| break; | |||
| case 58: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 160 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.ToggleScaleWinding(); } | |||
| break; | |||
| case 59: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 161 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgUnion(); } | |||
| break; | |||
| case 60: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 162 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgSubstract(); } | |||
| break; | |||
| case 61: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 163 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgSubstractLoss(); } | |||
| break; | |||
| case 62: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 164 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgAnd(); } | |||
| break; | |||
| case 63: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 165 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.CsgXor(); } | |||
| break; | |||
| case 64: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 169 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendCylinder((int)(yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, | |||
| (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3, | |||
| (int)(yysemantic_stack_[(2) - (2)].args).f4, (int)(yysemantic_stack_[(2) - (2)].args).f5, 0); } | |||
| break; | |||
| case 44: | |||
| case 65: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 151 "easymesh/easymesh-parser.y" | |||
| #line 172 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendCylinder((int)(yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, | |||
| (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3, | |||
| (int)(yysemantic_stack_[(2) - (2)].args).f4, (int)(yysemantic_stack_[(2) - (2)].args).f5, (int)(yysemantic_stack_[(2) - (2)].args).f6); } | |||
| break; | |||
| case 45: | |||
| case 66: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 154 "easymesh/easymesh-parser.y" | |||
| #line 175 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendBox(vec3((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2)); } | |||
| break; | |||
| case 46: | |||
| case 67: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 155 "easymesh/easymesh-parser.y" | |||
| #line 176 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendSmoothChamfBox(vec3((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, | |||
| (yysemantic_stack_[(2) - (2)].args).f2), (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 47: | |||
| case 68: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 157 "easymesh/easymesh-parser.y" | |||
| #line 178 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendFlatChamfBox(vec3((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, | |||
| (yysemantic_stack_[(2) - (2)].args).f2), (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 48: | |||
| case 69: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 159 "easymesh/easymesh-parser.y" | |||
| #line 180 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendSphere((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 49: | |||
| case 70: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 160 "easymesh/easymesh-parser.y" | |||
| #line 181 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendCapsule((yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 50: | |||
| case 71: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 161 "easymesh/easymesh-parser.y" | |||
| #line 182 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendTorus((int)(yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 51: | |||
| case 72: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 162 "easymesh/easymesh-parser.y" | |||
| #line 183 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendStar((int)(yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (yysemantic_stack_[(2) - (2)].args).f2, | |||
| (int)(yysemantic_stack_[(2) - (2)].args).f3, (int)(yysemantic_stack_[(2) - (2)].args).f4); } | |||
| break; | |||
| case 52: | |||
| case 73: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 164 "easymesh/easymesh-parser.y" | |||
| #line 185 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendExpandedStar((int)(yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, | |||
| (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3); } | |||
| break; | |||
| case 53: | |||
| case 74: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 166 "easymesh/easymesh-parser.y" | |||
| #line 187 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendDisc((int)(yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, (int)(yysemantic_stack_[(2) - (2)].args).f2); } | |||
| break; | |||
| case 54: | |||
| case 75: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 167 "easymesh/easymesh-parser.y" | |||
| #line 188 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendSimpleTriangle((yysemantic_stack_[(2) - (2)].args).f0, (int)(yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 55: | |||
| case 76: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 168 "easymesh/easymesh-parser.y" | |||
| #line 189 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendSimpleQuad((yysemantic_stack_[(2) - (2)].args).f0, (int)(yysemantic_stack_[(2) - (2)].args).f1); } | |||
| break; | |||
| case 56: | |||
| case 77: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 169 "easymesh/easymesh-parser.y" | |||
| #line 190 "easymesh/easymesh-parser.y" | |||
| { mc.m_mesh.AppendCog((int)(yysemantic_stack_[(2) - (2)].args).f0, (yysemantic_stack_[(2) - (2)].args).f1, | |||
| (yysemantic_stack_[(2) - (2)].args).f2, (yysemantic_stack_[(2) - (2)].args).f3, (yysemantic_stack_[(2) - (2)].args).f4, (yysemantic_stack_[(2) - (2)].args).f5, (yysemantic_stack_[(2) - (2)].args).f6, | |||
| (yysemantic_stack_[(2) - (2)].args).f7, (yysemantic_stack_[(2) - (2)].args).f8, (int)(yysemantic_stack_[(2) - (2)].args).f9); } | |||
| break; | |||
| case 57: | |||
| case 78: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 174 "easymesh/easymesh-parser.y" | |||
| #line 195 "easymesh/easymesh-parser.y" | |||
| { (yyval.args).f0 = (yysemantic_stack_[(1) - (1)].fval); } | |||
| break; | |||
| case 58: | |||
| case 79: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 175 "easymesh/easymesh-parser.y" | |||
| #line 196 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f1 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 59: | |||
| case 80: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 176 "easymesh/easymesh-parser.y" | |||
| #line 197 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f2 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 60: | |||
| case 81: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 177 "easymesh/easymesh-parser.y" | |||
| #line 198 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f3 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 61: | |||
| case 82: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 178 "easymesh/easymesh-parser.y" | |||
| #line 199 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f4 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 62: | |||
| case 83: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 179 "easymesh/easymesh-parser.y" | |||
| #line 200 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f5 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 63: | |||
| case 84: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 180 "easymesh/easymesh-parser.y" | |||
| #line 201 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f6 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 64: | |||
| case 85: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 181 "easymesh/easymesh-parser.y" | |||
| #line 202 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f7 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 65: | |||
| case 86: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 182 "easymesh/easymesh-parser.y" | |||
| #line 203 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f8 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 66: | |||
| case 87: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 183 "easymesh/easymesh-parser.y" | |||
| #line 204 "easymesh/easymesh-parser.y" | |||
| { (yyval.args) = (yysemantic_stack_[(2) - (1)].args); (yyval.args).f9 = (yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| case 67: | |||
| case 88: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 186 "easymesh/easymesh-parser.y" | |||
| #line 207 "easymesh/easymesh-parser.y" | |||
| { (yyval.fval) = (yysemantic_stack_[(1) - (1)].fval); } | |||
| break; | |||
| case 68: | |||
| case 89: | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 187 "easymesh/easymesh-parser.y" | |||
| #line 208 "easymesh/easymesh-parser.y" | |||
| { (yyval.fval) = -(yysemantic_stack_[(2) - (2)].fval); } | |||
| break; | |||
| /* Line 677 of lalr1.cc */ | |||
| #line 853 "generated/easymesh-parser.cpp" | |||
| #line 1000 "generated/easymesh-parser.cpp" | |||
| default: | |||
| break; | |||
| } | |||
| @@ -1054,22 +1201,25 @@ namespace lol { | |||
| /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing | |||
| STATE-NUM. */ | |||
| const signed char EasyMeshParser::yypact_ninf_ = -10; | |||
| const signed char EasyMeshParser::yypact_ninf_ = -69; | |||
| const signed char | |||
| EasyMeshParser::yypact_[] = | |||
| { | |||
| -3, 29, 31, 16, 16, 16, 16, -10, 16, 16, | |||
| 16, 16, -10, 16, 16, 16, 16, -10, 16, 16, | |||
| -10, 16, -10, -10, -10, -10, -10, 16, 16, 16, | |||
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, | |||
| 16, -10, 42, 50, -3, -3, 83, -10, -10, -10, | |||
| -10, -10, -10, 16, 16, 16, 16, -10, -10, -10, | |||
| -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, | |||
| -10, -10, -10, -10, -10, -10, -10, 16, 16, 16, | |||
| -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, | |||
| -10, 16, 16, 16, 16, -10, -10, -10, -10, -10, | |||
| 5, -10, -10, -10, -10, -10, -10, -10, -10, -10, | |||
| -10, -10, -10, -10 | |||
| 60, -40, -23, -47, -47, -47, -47, -47, -47, -47, | |||
| -47, -47, -69, -47, -47, -47, -47, -47, -47, -47, | |||
| -47, -47, -69, -47, -47, -47, -47, -47, -47, -47, | |||
| -47, -47, -69, -47, -47, -69, -47, -69, -69, -69, | |||
| -69, -69, -47, -47, -47, -47, -47, -47, -47, -47, | |||
| -47, -47, -47, -47, -47, -47, -69, 4, 6, 60, | |||
| 60, 119, -69, -69, -69, -69, -69, -69, -47, -47, | |||
| -47, -47, -69, -69, -69, -69, -69, -69, -47, -69, | |||
| -69, -47, -69, -69, -69, -69, -69, -69, -69, -47, | |||
| -69, -69, -47, -69, -69, -69, -69, -69, -69, -69, | |||
| -47, -69, -69, -47, -69, -69, -69, -69, -69, -69, | |||
| -69, -69, -69, -47, -47, -47, -69, -69, -69, -69, | |||
| -69, -69, -69, -69, -69, -69, -69, -47, -47, -47, | |||
| -47, -69, -69, -69, -69, -69, -53, -69, -69, -69, | |||
| -69, -69, -69, -69, -69, -69, -69, -69, -69, -69 | |||
| }; | |||
| /* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE | |||
| @@ -1078,36 +1228,39 @@ namespace lol { | |||
| const unsigned char | |||
| EasyMeshParser::yydefact_[] = | |||
| { | |||
| 0, 0, 0, 0, 0, 0, 0, 33, 0, 0, | |||
| 0, 0, 34, 0, 0, 0, 0, 35, 0, 0, | |||
| 37, 0, 38, 39, 40, 41, 42, 0, 0, 0, | |||
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| 0, 7, 0, 0, 3, 0, 5, 9, 11, 12, | |||
| 13, 67, 15, 0, 0, 0, 0, 14, 57, 17, | |||
| 16, 19, 23, 26, 29, 20, 24, 27, 30, 21, | |||
| 25, 28, 31, 22, 32, 36, 18, 0, 0, 43, | |||
| 44, 45, 46, 47, 48, 49, 51, 52, 53, 54, | |||
| 55, 0, 0, 0, 0, 56, 50, 1, 2, 4, | |||
| 0, 10, 68, 58, 59, 60, 61, 62, 63, 64, | |||
| 65, 66, 8, 6 | |||
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| 0, 0, 54, 0, 0, 0, 0, 0, 0, 0, | |||
| 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, | |||
| 0, 0, 56, 0, 0, 58, 0, 59, 60, 61, | |||
| 62, 63, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| 0, 0, 0, 0, 0, 0, 7, 0, 0, 3, | |||
| 0, 5, 9, 11, 12, 13, 88, 15, 0, 0, | |||
| 0, 0, 14, 78, 17, 16, 19, 23, 26, 27, | |||
| 32, 35, 36, 41, 44, 45, 50, 20, 24, 28, | |||
| 29, 33, 37, 38, 42, 46, 47, 51, 21, 25, | |||
| 30, 31, 34, 39, 40, 43, 48, 49, 52, 22, | |||
| 53, 57, 18, 0, 0, 64, 65, 66, 67, 68, | |||
| 69, 70, 72, 73, 74, 75, 76, 0, 0, 0, | |||
| 0, 77, 71, 1, 2, 4, 0, 10, 89, 79, | |||
| 80, 81, 82, 83, 84, 85, 86, 87, 8, 6 | |||
| }; | |||
| /* YYPGOTO[NTERM-NUM]. */ | |||
| const short int | |||
| EasyMeshParser::yypgoto_[] = | |||
| { | |||
| -10, -10, -4, -10, -10, -10, -10, 9, -10, -10, | |||
| -10, 45, 25, 121, 128, 33, 26, 32, -10, -10, | |||
| -10, -9 | |||
| -69, -69, -30, -69, -69, -69, -69, -50, -69, -69, | |||
| -69, 224, 178, 0, 176, -35, -32, -28, -69, -69, | |||
| -69, -68 | |||
| }; | |||
| /* YYDEFGOTO[NTERM-NUM]. */ | |||
| const signed char | |||
| const short int | |||
| EasyMeshParser::yydefgoto_[] = | |||
| { | |||
| -1, 42, 43, 44, 45, 113, 46, 47, 48, 49, | |||
| 50, 54, 55, 56, 77, 78, 79, 80, 93, 94, | |||
| 95, 58 | |||
| -1, 57, 58, 59, 60, 149, 61, 62, 63, 64, | |||
| 65, 69, 70, 71, 113, 114, 115, 116, 129, 130, | |||
| 131, 73 | |||
| }; | |||
| /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If | |||
| @@ -1117,46 +1270,66 @@ namespace lol { | |||
| const unsigned char | |||
| EasyMeshParser::yytable_[] = | |||
| { | |||
| 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, | |||
| 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, | |||
| 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, | |||
| 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, | |||
| 99, 100, 97, 41, 102, 103, 104, 105, 61, 62, | |||
| 98, 64, 112, 65, 66, 101, 68, 84, 69, 70, | |||
| 51, 72, 89, 90, 53, 91, 75, 86, 106, 107, | |||
| 108, 92, 76, 51, 52, 51, 59, 53, 0, 53, | |||
| 0, 0, 108, 109, 110, 111, 1, 2, 3, 4, | |||
| 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, | |||
| 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, | |||
| 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, | |||
| 35, 36, 37, 38, 39, 40, 63, 0, 0, 57, | |||
| 60, 67, 0, 0, 0, 0, 71, 0, 0, 73, | |||
| 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| 81, 0, 0, 0, 85, 0, 0, 88, 82, 83, | |||
| 0, 96, 0, 87 | |||
| 138, 139, 140, 141, 133, 78, 134, 81, 83, 148, | |||
| 141, 137, 66, 141, 122, 89, 68, 92, 94, 66, | |||
| 67, 141, 127, 68, 141, 100, 128, 103, 105, 135, | |||
| 136, 0, 141, 109, 110, 141, 66, 74, 0, 0, | |||
| 68, 0, 0, 0, 117, 142, 143, 144, 121, 0, | |||
| 0, 124, 0, 0, 0, 132, 0, 0, 0, 144, | |||
| 145, 146, 147, 1, 2, 3, 4, 5, 6, 7, | |||
| 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, | |||
| 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, | |||
| 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, | |||
| 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, | |||
| 48, 49, 50, 51, 52, 53, 54, 55, 0, 0, | |||
| 0, 56, 1, 2, 3, 4, 5, 6, 7, 8, | |||
| 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, | |||
| 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, | |||
| 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, | |||
| 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, | |||
| 49, 50, 51, 52, 53, 54, 55, 72, 75, 0, | |||
| 0, 79, 0, 82, 80, 0, 0, 84, 85, 0, | |||
| 0, 90, 0, 93, 91, 0, 0, 95, 96, 0, | |||
| 0, 101, 0, 104, 102, 0, 0, 106, 107, 0, | |||
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| 0, 118, 119, 0, 0, 120, 123, 76, 77, 0, | |||
| 125, 126, 0, 0, 0, 86, 0, 87, 88, 0, | |||
| 0, 0, 0, 0, 0, 97, 0, 98, 99, 0, | |||
| 0, 0, 0, 0, 0, 108, 0, 0, 0, 0, | |||
| 111, 0, 0, 0, 0, 0, 112 | |||
| }; | |||
| /* YYCHECK. */ | |||
| const signed char | |||
| const short int | |||
| EasyMeshParser::yycheck_[] = | |||
| { | |||
| 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, | |||
| 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, | |||
| 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, | |||
| 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, | |||
| 44, 45, 0, 46, 53, 54, 55, 56, 3, 4, | |||
| 0, 6, 47, 8, 9, 46, 11, 32, 13, 14, | |||
| 44, 16, 37, 38, 48, 39, 21, 34, 77, 78, | |||
| 79, 39, 27, 44, 45, 44, 45, 48, -1, 48, | |||
| -1, -1, 91, 92, 93, 94, 3, 4, 5, 6, | |||
| 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, | |||
| 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, | |||
| 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, | |||
| 37, 38, 39, 40, 41, 42, 5, -1, -1, 1, | |||
| 2, 10, -1, -1, -1, -1, 15, -1, -1, 18, | |||
| 19, -1, -1, -1, -1, -1, -1, -1, -1, -1, | |||
| 29, -1, -1, -1, 33, -1, -1, 36, 30, 31, | |||
| -1, 40, -1, 35 | |||
| 68, 69, 70, 71, 0, 5, 0, 7, 8, 62, | |||
| 78, 61, 59, 81, 49, 15, 63, 17, 18, 59, | |||
| 60, 89, 54, 63, 92, 25, 54, 27, 28, 59, | |||
| 60, -1, 100, 33, 34, 103, 59, 60, -1, -1, | |||
| 63, -1, -1, -1, 44, 113, 114, 115, 48, -1, | |||
| -1, 51, -1, -1, -1, 55, -1, -1, -1, 127, | |||
| 128, 129, 130, 3, 4, 5, 6, 7, 8, 9, | |||
| 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, | |||
| 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, | |||
| 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, | |||
| 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, | |||
| 50, 51, 52, 53, 54, 55, 56, 57, -1, -1, | |||
| -1, 61, 3, 4, 5, 6, 7, 8, 9, 10, | |||
| 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, | |||
| 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, | |||
| 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, | |||
| 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, | |||
| 51, 52, 53, 54, 55, 56, 57, 1, 2, -1, | |||
| -1, 5, -1, 7, 6, -1, -1, 9, 10, -1, | |||
| -1, 15, -1, 17, 16, -1, -1, 19, 20, -1, | |||
| -1, 25, -1, 27, 26, -1, -1, 29, 30, -1, | |||
| -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, | |||
| -1, 45, 46, -1, -1, 47, 50, 3, 4, -1, | |||
| 52, 53, -1, -1, -1, 11, -1, 13, 14, -1, | |||
| -1, -1, -1, -1, -1, 21, -1, 23, 24, -1, | |||
| -1, -1, -1, -1, -1, 31, -1, -1, -1, -1, | |||
| 36, -1, -1, -1, -1, -1, 42 | |||
| }; | |||
| /* STOS_[STATE-NUM] -- The (internal number of the) accessing | |||
| @@ -1168,14 +1341,17 @@ namespace lol { | |||
| 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, | |||
| 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, | |||
| 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, | |||
| 42, 46, 50, 51, 52, 53, 55, 56, 57, 58, | |||
| 59, 44, 45, 48, 60, 61, 62, 63, 70, 45, | |||
| 63, 60, 60, 62, 60, 60, 60, 62, 60, 60, | |||
| 60, 62, 60, 62, 62, 60, 60, 63, 64, 65, | |||
| 66, 62, 63, 63, 61, 62, 64, 63, 62, 61, | |||
| 61, 65, 66, 67, 68, 69, 62, 0, 0, 51, | |||
| 51, 56, 70, 70, 70, 70, 70, 70, 70, 70, | |||
| 70, 70, 47, 54 | |||
| 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, | |||
| 52, 53, 54, 55, 56, 57, 61, 65, 66, 67, | |||
| 68, 70, 71, 72, 73, 74, 59, 60, 63, 75, | |||
| 76, 77, 78, 85, 60, 78, 75, 75, 77, 78, | |||
| 76, 77, 78, 77, 76, 76, 75, 75, 75, 77, | |||
| 78, 76, 77, 78, 77, 76, 76, 75, 75, 75, | |||
| 77, 78, 76, 77, 78, 77, 76, 76, 75, 77, | |||
| 77, 75, 75, 78, 79, 80, 81, 77, 78, 78, | |||
| 76, 77, 79, 78, 77, 76, 76, 80, 81, 82, | |||
| 83, 84, 77, 0, 0, 66, 66, 71, 85, 85, | |||
| 85, 85, 85, 85, 85, 85, 85, 85, 62, 69 | |||
| }; | |||
| #if YYDEBUG | |||
| @@ -1188,7 +1364,9 @@ namespace lol { | |||
| 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, | |||
| 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, | |||
| 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, | |||
| 295, 296, 297, 298, 299, 300, 91, 93, 45 | |||
| 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, | |||
| 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, | |||
| 315, 91, 93, 45 | |||
| }; | |||
| #endif | |||
| @@ -1196,13 +1374,15 @@ namespace lol { | |||
| const unsigned char | |||
| EasyMeshParser::yyr1_[] = | |||
| { | |||
| 0, 49, 50, 51, 51, 52, 52, 53, 54, 55, | |||
| 55, 56, 56, 56, 57, 57, 57, 57, 58, 58, | |||
| 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, | |||
| 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, | |||
| 58, 58, 58, 59, 59, 59, 59, 59, 59, 59, | |||
| 59, 59, 59, 59, 59, 59, 59, 60, 61, 62, | |||
| 63, 64, 65, 66, 67, 68, 69, 70, 70 | |||
| 0, 64, 65, 66, 66, 67, 67, 68, 69, 70, | |||
| 70, 71, 71, 71, 72, 72, 72, 72, 73, 73, | |||
| 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, | |||
| 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, | |||
| 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, | |||
| 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, | |||
| 73, 73, 73, 73, 74, 74, 74, 74, 74, 74, | |||
| 74, 74, 74, 74, 74, 74, 74, 74, 75, 76, | |||
| 77, 78, 79, 80, 81, 82, 83, 84, 85, 85 | |||
| }; | |||
| /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ | |||
| @@ -1212,10 +1392,12 @@ namespace lol { | |||
| 0, 2, 2, 1, 2, 1, 3, 1, 1, 1, | |||
| 2, 1, 1, 1, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 1, 1, 1, 2, 1, 1, 1, | |||
| 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 1, 2 | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 1, 1, 1, 2, 1, 1, | |||
| 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 1, 2 | |||
| }; | |||
| #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE | |||
| @@ -1225,9 +1407,12 @@ namespace lol { | |||
| const EasyMeshParser::yytname_[] = | |||
| { | |||
| "T_END", "error", "$undefined", "T_COLOR", "T_BGCOLOR", "T_TRANSLATEX", | |||
| "T_ROTATEX", "T_TAPERX", "T_SCALEX", "T_MIRRORX", "T_TRANSLATEY", | |||
| "T_ROTATEY", "T_TAPERY", "T_SCALEY", "T_MIRRORY", "T_TRANSLATEZ", | |||
| "T_ROTATEZ", "T_TAPERZ", "T_SCALEZ", "T_MIRRORZ", "T_TRANSLATE", | |||
| "T_ROTATEX", "T_TAPERX", "T_TWISTX", "T_SHEARX", "T_STRETCHX", | |||
| "T_BENDXY", "T_BENDXZ", "T_SCALEX", "T_MIRRORX", "T_TRANSLATEY", | |||
| "T_ROTATEY", "T_TAPERY", "T_TWISTY", "T_SHEARY", "T_STRETCHY", | |||
| "T_BENDYX", "T_BENDYZ", "T_SCALEY", "T_MIRRORY", "T_TRANSLATEZ", | |||
| "T_ROTATEZ", "T_TAPERZ", "T_TWISTZ", "T_SHEARZ", "T_STRETCHZ", | |||
| "T_BENDZX", "T_BENDZY", "T_SCALEZ", "T_MIRRORZ", "T_TRANSLATE", | |||
| "T_SCALE", "T_TOGGLESCALEWINDING", "T_RADIALJITTER", "T_CSGUNION", | |||
| "T_CSGSUBSTRACT", "T_CSGSUBSTRACTLOSS", "T_CSGAND", "T_CSGXOR", | |||
| "T_CHAMFER", "T_CYLINDER", "T_BOX", "T_SMOOTHCHAMFBOX", "T_FLATCHAMFBOX", | |||
| @@ -1246,25 +1431,31 @@ namespace lol { | |||
| const EasyMeshParser::rhs_number_type | |||
| EasyMeshParser::yyrhs_[] = | |||
| { | |||
| 50, 0, -1, 51, 0, -1, 52, -1, 52, 51, | |||
| -1, 55, -1, 53, 51, 54, -1, 46, -1, 47, | |||
| -1, 56, -1, 55, 56, -1, 57, -1, 58, -1, | |||
| 59, -1, 3, 63, -1, 3, 45, -1, 4, 63, | |||
| -1, 4, 45, -1, 29, 60, -1, 5, 60, -1, | |||
| 10, 60, -1, 15, 60, -1, 20, 62, -1, 6, | |||
| 60, -1, 11, 60, -1, 16, 60, -1, 7, 62, | |||
| -1, 12, 62, -1, 17, 62, -1, 8, 60, -1, | |||
| 13, 60, -1, 18, 60, -1, 21, 62, -1, 9, | |||
| -1, 14, -1, 19, -1, 23, 60, -1, 22, -1, | |||
| 24, -1, 25, -1, 26, -1, 27, -1, 28, -1, | |||
| 30, 65, -1, 30, 66, -1, 31, 62, -1, 32, | |||
| 63, -1, 33, 63, -1, 34, 61, -1, 35, 62, | |||
| -1, 42, 62, -1, 36, 64, -1, 37, 63, -1, | |||
| 38, 62, -1, 39, 61, -1, 40, 61, -1, 41, | |||
| 69, -1, 70, -1, 60, 70, -1, 61, 70, -1, | |||
| 62, 70, -1, 63, 70, -1, 64, 70, -1, 65, | |||
| 70, -1, 66, 70, -1, 67, 70, -1, 68, 70, | |||
| -1, 44, -1, 48, 70, -1 | |||
| 65, 0, -1, 66, 0, -1, 67, -1, 67, 66, | |||
| -1, 70, -1, 68, 66, 69, -1, 61, -1, 62, | |||
| -1, 71, -1, 70, 71, -1, 72, -1, 73, -1, | |||
| 74, -1, 3, 78, -1, 3, 60, -1, 4, 78, | |||
| -1, 4, 60, -1, 44, 75, -1, 5, 75, -1, | |||
| 15, 75, -1, 25, 75, -1, 35, 77, -1, 6, | |||
| 75, -1, 16, 75, -1, 26, 75, -1, 7, 77, | |||
| -1, 7, 78, -1, 17, 77, -1, 17, 78, -1, | |||
| 27, 77, -1, 27, 78, -1, 8, 76, -1, 18, | |||
| 76, -1, 28, 76, -1, 9, 77, -1, 9, 78, | |||
| -1, 19, 77, -1, 19, 78, -1, 29, 77, -1, | |||
| 29, 78, -1, 10, 77, -1, 20, 77, -1, 30, | |||
| 77, -1, 11, 76, -1, 12, 76, -1, 21, 76, | |||
| -1, 22, 76, -1, 31, 76, -1, 32, 76, -1, | |||
| 13, 75, -1, 23, 75, -1, 33, 75, -1, 36, | |||
| 77, -1, 14, -1, 24, -1, 34, -1, 38, 75, | |||
| -1, 37, -1, 39, -1, 40, -1, 41, -1, 42, | |||
| -1, 43, -1, 45, 80, -1, 45, 81, -1, 46, | |||
| 77, -1, 47, 78, -1, 48, 78, -1, 49, 76, | |||
| -1, 50, 77, -1, 57, 77, -1, 51, 79, -1, | |||
| 52, 78, -1, 53, 77, -1, 54, 76, -1, 55, | |||
| 76, -1, 56, 84, -1, 85, -1, 75, 85, -1, | |||
| 76, 85, -1, 77, 85, -1, 78, 85, -1, 79, | |||
| 85, -1, 80, 85, -1, 81, 85, -1, 82, 85, | |||
| -1, 83, 85, -1, 59, -1, 63, 85, -1 | |||
| }; | |||
| /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in | |||
| @@ -1275,10 +1466,12 @@ namespace lol { | |||
| 0, 0, 3, 6, 8, 11, 13, 17, 19, 21, | |||
| 23, 26, 28, 30, 32, 35, 38, 41, 44, 47, | |||
| 50, 53, 56, 59, 62, 65, 68, 71, 74, 77, | |||
| 80, 83, 86, 89, 91, 93, 95, 98, 100, 102, | |||
| 104, 106, 108, 110, 113, 116, 119, 122, 125, 128, | |||
| 131, 134, 137, 140, 143, 146, 149, 152, 154, 157, | |||
| 160, 163, 166, 169, 172, 175, 178, 181, 183 | |||
| 80, 83, 86, 89, 92, 95, 98, 101, 104, 107, | |||
| 110, 113, 116, 119, 122, 125, 128, 131, 134, 137, | |||
| 140, 143, 146, 149, 152, 154, 156, 158, 161, 163, | |||
| 165, 167, 169, 171, 173, 176, 179, 182, 185, 188, | |||
| 191, 194, 197, 200, 203, 206, 209, 212, 215, 217, | |||
| 220, 223, 226, 229, 232, 235, 238, 241, 244, 246 | |||
| }; | |||
| /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ | |||
| @@ -1289,9 +1482,11 @@ namespace lol { | |||
| 99, 103, 104, 105, 109, 110, 113, 114, 120, 121, | |||
| 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, | |||
| 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, | |||
| 142, 143, 144, 148, 151, 154, 155, 157, 159, 160, | |||
| 161, 162, 164, 166, 167, 168, 169, 174, 175, 176, | |||
| 177, 178, 179, 180, 181, 182, 183, 186, 187 | |||
| 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, | |||
| 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, | |||
| 162, 163, 164, 165, 169, 172, 175, 176, 178, 180, | |||
| 181, 182, 183, 185, 187, 188, 189, 190, 195, 196, | |||
| 197, 198, 199, 200, 201, 202, 203, 204, 207, 208 | |||
| }; | |||
| // Print the state stack on the debug stream. | |||
| @@ -1335,12 +1530,12 @@ namespace lol { | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 48, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 63, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 46, 2, 47, 2, 2, 2, 2, 2, 2, | |||
| 2, 61, 2, 62, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, | |||
| @@ -1361,7 +1556,8 @@ namespace lol { | |||
| 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, | |||
| 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, | |||
| 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, | |||
| 45 | |||
| 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, | |||
| 55, 56, 57, 58, 59, 60 | |||
| }; | |||
| if ((unsigned int) t <= yyuser_token_number_max_) | |||
| return translate_table[t]; | |||
| @@ -1370,26 +1566,26 @@ namespace lol { | |||
| } | |||
| const int EasyMeshParser::yyeof_ = 0; | |||
| const int EasyMeshParser::yylast_ = 163; | |||
| const int EasyMeshParser::yylast_ = 266; | |||
| const int EasyMeshParser::yynnts_ = 22; | |||
| const int EasyMeshParser::yyempty_ = -2; | |||
| const int EasyMeshParser::yyfinal_ = 97; | |||
| const int EasyMeshParser::yyfinal_ = 133; | |||
| const int EasyMeshParser::yyterror_ = 1; | |||
| const int EasyMeshParser::yyerrcode_ = 256; | |||
| const int EasyMeshParser::yyntokens_ = 49; | |||
| const int EasyMeshParser::yyntokens_ = 64; | |||
| const unsigned int EasyMeshParser::yyuser_token_number_max_ = 300; | |||
| const unsigned int EasyMeshParser::yyuser_token_number_max_ = 315; | |||
| const EasyMeshParser::token_number_type EasyMeshParser::yyundef_token_ = 2; | |||
| } // lol | |||
| /* Line 1053 of lalr1.cc */ | |||
| #line 1389 "generated/easymesh-parser.cpp" | |||
| #line 1585 "generated/easymesh-parser.cpp" | |||
| /* Line 1055 of lalr1.cc */ | |||
| #line 190 "easymesh/easymesh-parser.y" | |||
| #line 211 "easymesh/easymesh-parser.y" | |||
| void lol::EasyMeshParser::error(const EasyMeshParser::location_type& l, | |||
| @@ -2,7 +2,7 @@ | |||
| /* Skeleton interface for Bison LALR(1) parsers in C++ | |||
| Copyright (C) 2002-2011 Free Software Foundation, Inc. | |||
| Copyright (C) 2002-2010 Free Software Foundation, Inc. | |||
| This program is free software: you can redistribute it and/or modify | |||
| it under the terms of the GNU General Public License as published by | |||
| @@ -137,44 +137,59 @@ namespace lol { | |||
| T_TRANSLATEX = 260, | |||
| T_ROTATEX = 261, | |||
| T_TAPERX = 262, | |||
| T_SCALEX = 263, | |||
| T_MIRRORX = 264, | |||
| T_TRANSLATEY = 265, | |||
| T_ROTATEY = 266, | |||
| T_TAPERY = 267, | |||
| T_SCALEY = 268, | |||
| T_MIRRORY = 269, | |||
| T_TRANSLATEZ = 270, | |||
| T_ROTATEZ = 271, | |||
| T_TAPERZ = 272, | |||
| T_SCALEZ = 273, | |||
| T_MIRRORZ = 274, | |||
| T_TRANSLATE = 275, | |||
| T_SCALE = 276, | |||
| T_TOGGLESCALEWINDING = 277, | |||
| T_RADIALJITTER = 278, | |||
| T_CSGUNION = 279, | |||
| T_CSGSUBSTRACT = 280, | |||
| T_CSGSUBSTRACTLOSS = 281, | |||
| T_CSGAND = 282, | |||
| T_CSGXOR = 283, | |||
| T_CHAMFER = 284, | |||
| T_CYLINDER = 285, | |||
| T_BOX = 286, | |||
| T_SMOOTHCHAMFBOX = 287, | |||
| T_FLATCHAMFBOX = 288, | |||
| T_SPHERE = 289, | |||
| T_CAPSULE = 290, | |||
| T_STAR = 291, | |||
| T_EXPANDEDSTAR = 292, | |||
| T_DISC = 293, | |||
| T_TRIANGLE = 294, | |||
| T_QUAD = 295, | |||
| T_COG = 296, | |||
| T_TORUS = 297, | |||
| T_ERROR = 298, | |||
| NUMBER = 299, | |||
| COLOR = 300 | |||
| T_TWISTX = 263, | |||
| T_SHEARX = 264, | |||
| T_STRETCHX = 265, | |||
| T_BENDXY = 266, | |||
| T_BENDXZ = 267, | |||
| T_SCALEX = 268, | |||
| T_MIRRORX = 269, | |||
| T_TRANSLATEY = 270, | |||
| T_ROTATEY = 271, | |||
| T_TAPERY = 272, | |||
| T_TWISTY = 273, | |||
| T_SHEARY = 274, | |||
| T_STRETCHY = 275, | |||
| T_BENDYX = 276, | |||
| T_BENDYZ = 277, | |||
| T_SCALEY = 278, | |||
| T_MIRRORY = 279, | |||
| T_TRANSLATEZ = 280, | |||
| T_ROTATEZ = 281, | |||
| T_TAPERZ = 282, | |||
| T_TWISTZ = 283, | |||
| T_SHEARZ = 284, | |||
| T_STRETCHZ = 285, | |||
| T_BENDZX = 286, | |||
| T_BENDZY = 287, | |||
| T_SCALEZ = 288, | |||
| T_MIRRORZ = 289, | |||
| T_TRANSLATE = 290, | |||
| T_SCALE = 291, | |||
| T_TOGGLESCALEWINDING = 292, | |||
| T_RADIALJITTER = 293, | |||
| T_CSGUNION = 294, | |||
| T_CSGSUBSTRACT = 295, | |||
| T_CSGSUBSTRACTLOSS = 296, | |||
| T_CSGAND = 297, | |||
| T_CSGXOR = 298, | |||
| T_CHAMFER = 299, | |||
| T_CYLINDER = 300, | |||
| T_BOX = 301, | |||
| T_SMOOTHCHAMFBOX = 302, | |||
| T_FLATCHAMFBOX = 303, | |||
| T_SPHERE = 304, | |||
| T_CAPSULE = 305, | |||
| T_STAR = 306, | |||
| T_EXPANDEDSTAR = 307, | |||
| T_DISC = 308, | |||
| T_TRIANGLE = 309, | |||
| T_QUAD = 310, | |||
| T_COG = 311, | |||
| T_TORUS = 312, | |||
| T_ERROR = 313, | |||
| NUMBER = 314, | |||
| COLOR = 315 | |||
| }; | |||
| }; | |||
| @@ -261,7 +276,7 @@ namespace lol { | |||
| static const unsigned char yydefact_[]; | |||
| static const short int yypgoto_[]; | |||
| static const signed char yydefgoto_[]; | |||
| static const short int yydefgoto_[]; | |||
| /// What to do in a state. | |||
| /// \a yytable_[yypact_[s]]: what to do in state \a s. | |||
| @@ -271,7 +286,7 @@ namespace lol { | |||
| static const unsigned char yytable_[]; | |||
| static const signed char yytable_ninf_; | |||
| static const signed char yycheck_[]; | |||
| static const short int yycheck_[]; | |||
| /// For a state, its accessing symbol. | |||
| static const unsigned char yystos_[]; | |||
| @@ -348,7 +363,7 @@ namespace lol { | |||
| } // lol | |||
| /* Line 34 of lalr1.cc */ | |||
| #line 352 "generated/easymesh-parser.h" | |||
| #line 367 "generated/easymesh-parser.h" | |||
| @@ -330,8 +330,8 @@ typedef unsigned char YY_CHAR; | |||
| *yy_cp = '\0'; \ | |||
| (yy_c_buf_p) = yy_cp; | |||
| #define YY_NUM_RULES 52 | |||
| #define YY_END_OF_BUFFER 53 | |||
| #define YY_NUM_RULES 67 | |||
| #define YY_END_OF_BUFFER 68 | |||
| /* This struct is not used in this scanner, | |||
| but its presence is necessary. */ | |||
| struct yy_trans_info | |||
| @@ -339,17 +339,20 @@ struct yy_trans_info | |||
| flex_int32_t yy_verify; | |||
| flex_int32_t yy_nxt; | |||
| }; | |||
| static yyconst flex_int16_t yy_accept[83] = | |||
| static yyconst flex_int16_t yy_accept[106] = | |||
| { 0, | |||
| 0, 0, 53, 51, 50, 49, 51, 51, 46, 51, | |||
| 45, 47, 48, 51, 51, 51, 51, 17, 7, 0, | |||
| 0, 45, 45, 0, 28, 29, 32, 0, 0, 35, | |||
| 36, 39, 3, 0, 19, 20, 21, 22, 8, 9, | |||
| 10, 1, 14, 15, 16, 0, 0, 4, 5, 6, | |||
| 0, 0, 45, 0, 31, 33, 0, 0, 0, 40, | |||
| 0, 2, 11, 12, 13, 18, 41, 30, 34, 37, | |||
| 38, 26, 24, 23, 27, 42, 25, 0, 43, 0, | |||
| 44, 0 | |||
| 0, 0, 68, 66, 65, 64, 66, 66, 61, 66, | |||
| 60, 62, 63, 66, 66, 66, 66, 66, 32, 7, | |||
| 0, 0, 60, 60, 0, 43, 44, 47, 0, 0, | |||
| 50, 51, 54, 0, 3, 0, 34, 35, 36, 37, | |||
| 8, 9, 10, 1, 0, 0, 29, 30, 31, 0, | |||
| 0, 0, 4, 5, 6, 0, 0, 60, 0, 46, | |||
| 48, 0, 0, 0, 55, 0, 0, 0, 0, 2, | |||
| 17, 18, 19, 20, 21, 22, 11, 12, 13, 33, | |||
| 14, 15, 16, 56, 45, 49, 52, 53, 23, 24, | |||
| 25, 26, 27, 28, 41, 39, 38, 42, 57, 40, | |||
| 0, 58, 0, 59, 0 | |||
| } ; | |||
| static yyconst flex_int32_t yy_ec[256] = | |||
| @@ -392,70 +395,82 @@ static yyconst flex_int32_t yy_meta[35] = | |||
| 1, 1, 1, 1 | |||
| } ; | |||
| static yyconst flex_int16_t yy_base[91] = | |||
| static yyconst flex_int16_t yy_base[114] = | |||
| { 0, | |||
| 0, 0, 113, 114, 114, 114, 0, 28, 30, 104, | |||
| 32, 114, 114, 36, 27, 11, 25, 41, 35, 0, | |||
| 103, 69, 70, 76, 114, 47, 114, 82, 94, 114, | |||
| 46, 84, 114, 88, 114, 114, 114, 114, 114, 114, | |||
| 114, 92, 114, 114, 114, 56, 74, 114, 114, 114, | |||
| 0, 96, 95, 76, 114, 114, 85, 83, 76, 114, | |||
| 70, 114, 114, 114, 114, 114, 0, 114, 114, 114, | |||
| 114, 114, 73, 114, 114, 0, 114, 0, 0, 0, | |||
| 114, 114, 92, 91, 90, 89, 83, 70, 68, 39 | |||
| 0, 0, 135, 136, 136, 136, 0, 28, 30, 126, | |||
| 32, 136, 136, 36, 117, 27, 11, 25, 51, 73, | |||
| 0, 124, 53, 59, 67, 136, 55, 136, 103, 115, | |||
| 136, 62, 105, 56, 136, 109, 136, 136, 136, 136, | |||
| 136, 136, 136, 113, 59, 62, 136, 136, 136, 65, | |||
| 95, 76, 136, 136, 136, 0, 117, 116, 98, 136, | |||
| 136, 107, 105, 97, 136, 45, 68, 49, 90, 136, | |||
| 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, | |||
| 136, 136, 136, 0, 136, 136, 136, 136, 136, 136, | |||
| 136, 136, 136, 136, 136, 94, 136, 136, 0, 136, | |||
| 0, 0, 0, 136, 136, 113, 112, 111, 110, 109, | |||
| 54, 46, 39 | |||
| } ; | |||
| static yyconst flex_int16_t yy_def[91] = | |||
| static yyconst flex_int16_t yy_def[114] = | |||
| { 0, | |||
| 82, 1, 82, 82, 82, 82, 83, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 84, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 85, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 86, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 87, 82, 88, 89, 90, | |||
| 82, 0, 82, 82, 82, 82, 82, 82, 82, 82 | |||
| 105, 1, 105, 105, 105, 105, 106, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 107, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 108, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 109, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 110, 105, | |||
| 111, 112, 113, 105, 0, 105, 105, 105, 105, 105, | |||
| 105, 105, 105 | |||
| } ; | |||
| static yyconst flex_int16_t yy_nxt[149] = | |||
| static yyconst flex_int16_t yy_nxt[171] = | |||
| { 0, | |||
| 4, 5, 6, 7, 8, 9, 10, 11, 4, 4, | |||
| 12, 13, 14, 4, 15, 4, 4, 4, 4, 4, | |||
| 4, 4, 16, 4, 4, 4, 17, 18, 19, 4, | |||
| 4, 4, 4, 4, 21, 22, 21, 22, 21, 22, | |||
| 81, 24, 35, 36, 37, 38, 33, 46, 24, 25, | |||
| 26, 27, 28, 29, 34, 42, 39, 40, 41, 54, | |||
| 58, 30, 47, 31, 32, 55, 48, 49, 50, 80, | |||
| 59, 79, 43, 44, 45, 21, 22, 23, 24, 24, | |||
| 52, 52, 72, 53, 78, 24, 24, 63, 64, 65, | |||
| 76, 67, 51, 20, 77, 71, 70, 73, 69, 74, | |||
| 68, 75, 53, 53, 66, 62, 61, 60, 57, 56, | |||
| 23, 23, 82, 3, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82 | |||
| 12, 13, 14, 15, 16, 4, 4, 4, 4, 4, | |||
| 4, 4, 17, 4, 4, 4, 18, 19, 20, 4, | |||
| 4, 4, 4, 4, 22, 23, 22, 23, 22, 23, | |||
| 104, 25, 37, 38, 39, 40, 35, 103, 25, 26, | |||
| 27, 28, 29, 30, 36, 102, 41, 42, 43, 22, | |||
| 23, 31, 25, 32, 33, 44, 24, 59, 25, 25, | |||
| 45, 57, 57, 60, 58, 25, 63, 89, 90, 46, | |||
| 93, 94, 47, 48, 49, 50, 64, 66, 67, 68, | |||
| 71, 72, 73, 74, 75, 76, 77, 78, 79, 91, | |||
| 51, 92, 95, 52, 53, 54, 55, 81, 82, 83, | |||
| 101, 99, 84, 56, 21, 100, 88, 96, 87, 97, | |||
| 86, 98, 85, 58, 58, 80, 70, 69, 65, 62, | |||
| 61, 24, 34, 24, 105, 3, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105 | |||
| } ; | |||
| static yyconst flex_int16_t yy_chk[149] = | |||
| static yyconst flex_int16_t yy_chk[171] = | |||
| { 0, | |||
| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | |||
| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | |||
| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | |||
| 1, 1, 1, 1, 8, 8, 9, 9, 11, 11, | |||
| 90, 11, 16, 16, 16, 17, 15, 19, 11, 14, | |||
| 14, 14, 14, 14, 15, 18, 17, 17, 17, 26, | |||
| 31, 14, 19, 14, 14, 26, 19, 19, 19, 89, | |||
| 31, 88, 18, 18, 18, 22, 22, 23, 22, 23, | |||
| 24, 24, 61, 24, 87, 22, 23, 46, 46, 46, | |||
| 86, 85, 84, 83, 73, 59, 58, 61, 57, 61, | |||
| 54, 61, 53, 52, 47, 42, 34, 32, 29, 28, | |||
| 21, 10, 3, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, | |||
| 82, 82, 82, 82, 82, 82, 82, 82 | |||
| 113, 11, 17, 17, 17, 18, 16, 112, 11, 14, | |||
| 14, 14, 14, 14, 16, 111, 18, 18, 18, 23, | |||
| 23, 14, 23, 14, 14, 19, 24, 27, 24, 23, | |||
| 19, 25, 25, 27, 25, 24, 32, 66, 66, 19, | |||
| 68, 68, 19, 19, 19, 20, 32, 34, 34, 34, | |||
| 45, 45, 45, 46, 46, 46, 50, 50, 50, 67, | |||
| 20, 67, 69, 20, 20, 20, 20, 52, 52, 52, | |||
| 110, 109, 108, 107, 106, 96, 64, 69, 63, 69, | |||
| 62, 69, 59, 58, 57, 51, 44, 36, 33, 30, | |||
| 29, 22, 15, 10, 3, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, | |||
| 105, 105, 105, 105, 105, 105, 105, 105, 105, 105 | |||
| } ; | |||
| /* The intent behind this definition is that it'll catch | |||
| @@ -504,7 +519,7 @@ typedef lol::EasyMeshParser::token_type token_type; | |||
| #define yyterminate() return token::T_END | |||
| #define YY_NO_UNISTD_H | |||
| #define YY_USER_ACTION yylloc->columns(yyleng); | |||
| #line 508 "generated/easymesh-scanner.cpp" | |||
| #line 523 "generated/easymesh-scanner.cpp" | |||
| #define INITIAL 0 | |||
| @@ -617,7 +632,7 @@ YY_DECL | |||
| yylloc->step(); | |||
| #line 621 "generated/easymesh-scanner.cpp" | |||
| #line 636 "generated/easymesh-scanner.cpp" | |||
| if ( !(yy_init) ) | |||
| { | |||
| @@ -670,13 +685,13 @@ yy_match: | |||
| while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | |||
| { | |||
| yy_current_state = (int) yy_def[yy_current_state]; | |||
| if ( yy_current_state >= 83 ) | |||
| if ( yy_current_state >= 106 ) | |||
| yy_c = yy_meta[(unsigned int) yy_c]; | |||
| } | |||
| yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | |||
| ++yy_cp; | |||
| } | |||
| while ( yy_current_state != 82 ); | |||
| while ( yy_current_state != 105 ); | |||
| yy_cp = (yy_last_accepting_cpos); | |||
| yy_current_state = (yy_last_accepting_state); | |||
| @@ -764,141 +779,216 @@ YY_RULE_SETUP | |||
| case 14: | |||
| YY_RULE_SETUP | |||
| #line 65 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALEX; } | |||
| { return token::T_TWISTX; } | |||
| YY_BREAK | |||
| case 15: | |||
| YY_RULE_SETUP | |||
| #line 66 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALEY; } | |||
| { return token::T_TWISTY; } | |||
| YY_BREAK | |||
| case 16: | |||
| YY_RULE_SETUP | |||
| #line 67 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALEZ; } | |||
| { return token::T_TWISTZ; } | |||
| YY_BREAK | |||
| case 17: | |||
| YY_RULE_SETUP | |||
| #line 68 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALE; } | |||
| { return token::T_SHEARX; } | |||
| YY_BREAK | |||
| case 18: | |||
| YY_RULE_SETUP | |||
| #line 69 "easymesh/easymesh-scanner.l" | |||
| { return token::T_TOGGLESCALEWINDING; } | |||
| { return token::T_SHEARY; } | |||
| YY_BREAK | |||
| case 19: | |||
| YY_RULE_SETUP | |||
| #line 70 "easymesh/easymesh-scanner.l" | |||
| { return token::T_MIRRORX; } | |||
| { return token::T_SHEARZ; } | |||
| YY_BREAK | |||
| case 20: | |||
| YY_RULE_SETUP | |||
| #line 71 "easymesh/easymesh-scanner.l" | |||
| { return token::T_MIRRORY; } | |||
| { return token::T_STRETCHX; } | |||
| YY_BREAK | |||
| case 21: | |||
| YY_RULE_SETUP | |||
| #line 72 "easymesh/easymesh-scanner.l" | |||
| { return token::T_MIRRORZ; } | |||
| { return token::T_STRETCHY; } | |||
| YY_BREAK | |||
| case 22: | |||
| YY_RULE_SETUP | |||
| #line 73 "easymesh/easymesh-scanner.l" | |||
| { return token::T_RADIALJITTER; } | |||
| { return token::T_STRETCHZ; } | |||
| YY_BREAK | |||
| case 23: | |||
| YY_RULE_SETUP | |||
| #line 75 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGUNION; } | |||
| #line 74 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BENDXY; } | |||
| YY_BREAK | |||
| case 24: | |||
| YY_RULE_SETUP | |||
| #line 76 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGSUBSTRACT; } | |||
| #line 75 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BENDXZ; } | |||
| YY_BREAK | |||
| case 25: | |||
| YY_RULE_SETUP | |||
| #line 77 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGSUBSTRACTLOSS; } | |||
| #line 76 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BENDYX; } | |||
| YY_BREAK | |||
| case 26: | |||
| YY_RULE_SETUP | |||
| #line 78 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGAND; } | |||
| #line 77 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BENDYZ; } | |||
| YY_BREAK | |||
| case 27: | |||
| YY_RULE_SETUP | |||
| #line 79 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGXOR; } | |||
| #line 78 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BENDZX; } | |||
| YY_BREAK | |||
| case 28: | |||
| YY_RULE_SETUP | |||
| #line 81 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BOX; } | |||
| #line 79 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BENDZY; } | |||
| YY_BREAK | |||
| case 29: | |||
| YY_RULE_SETUP | |||
| #line 82 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CYLINDER; } | |||
| #line 80 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALEX; } | |||
| YY_BREAK | |||
| case 30: | |||
| YY_RULE_SETUP | |||
| #line 83 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CAPSULE; } | |||
| #line 81 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALEY; } | |||
| YY_BREAK | |||
| case 31: | |||
| YY_RULE_SETUP | |||
| #line 84 "easymesh/easymesh-scanner.l" | |||
| { return token::T_COG; } | |||
| #line 82 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALEZ; } | |||
| YY_BREAK | |||
| case 32: | |||
| YY_RULE_SETUP | |||
| #line 85 "easymesh/easymesh-scanner.l" | |||
| { return token::T_DISC; } | |||
| #line 83 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SCALE; } | |||
| YY_BREAK | |||
| case 33: | |||
| YY_RULE_SETUP | |||
| #line 86 "easymesh/easymesh-scanner.l" | |||
| { return token::T_EXPANDEDSTAR; } | |||
| #line 84 "easymesh/easymesh-scanner.l" | |||
| { return token::T_TOGGLESCALEWINDING; } | |||
| YY_BREAK | |||
| case 34: | |||
| YY_RULE_SETUP | |||
| #line 87 "easymesh/easymesh-scanner.l" | |||
| { return token::T_FLATCHAMFBOX; } | |||
| #line 85 "easymesh/easymesh-scanner.l" | |||
| { return token::T_MIRRORX; } | |||
| YY_BREAK | |||
| case 35: | |||
| YY_RULE_SETUP | |||
| #line 88 "easymesh/easymesh-scanner.l" | |||
| { return token::T_QUAD; } | |||
| #line 86 "easymesh/easymesh-scanner.l" | |||
| { return token::T_MIRRORY; } | |||
| YY_BREAK | |||
| case 36: | |||
| YY_RULE_SETUP | |||
| #line 89 "easymesh/easymesh-scanner.l" | |||
| { return token::T_STAR; } | |||
| #line 87 "easymesh/easymesh-scanner.l" | |||
| { return token::T_MIRRORZ; } | |||
| YY_BREAK | |||
| case 37: | |||
| YY_RULE_SETUP | |||
| #line 90 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SMOOTHCHAMFBOX; } | |||
| #line 88 "easymesh/easymesh-scanner.l" | |||
| { return token::T_RADIALJITTER; } | |||
| YY_BREAK | |||
| case 38: | |||
| YY_RULE_SETUP | |||
| #line 91 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SPHERE; } | |||
| #line 90 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGUNION; } | |||
| YY_BREAK | |||
| case 39: | |||
| YY_RULE_SETUP | |||
| #line 92 "easymesh/easymesh-scanner.l" | |||
| { return token::T_TRIANGLE; } | |||
| #line 91 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGSUBSTRACT; } | |||
| YY_BREAK | |||
| case 40: | |||
| YY_RULE_SETUP | |||
| #line 92 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGSUBSTRACTLOSS; } | |||
| YY_BREAK | |||
| case 41: | |||
| YY_RULE_SETUP | |||
| #line 93 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGAND; } | |||
| YY_BREAK | |||
| case 42: | |||
| YY_RULE_SETUP | |||
| #line 94 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CSGXOR; } | |||
| YY_BREAK | |||
| case 43: | |||
| YY_RULE_SETUP | |||
| #line 96 "easymesh/easymesh-scanner.l" | |||
| { return token::T_BOX; } | |||
| YY_BREAK | |||
| case 44: | |||
| YY_RULE_SETUP | |||
| #line 97 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CYLINDER; } | |||
| YY_BREAK | |||
| case 45: | |||
| YY_RULE_SETUP | |||
| #line 98 "easymesh/easymesh-scanner.l" | |||
| { return token::T_CAPSULE; } | |||
| YY_BREAK | |||
| case 46: | |||
| YY_RULE_SETUP | |||
| #line 99 "easymesh/easymesh-scanner.l" | |||
| { return token::T_COG; } | |||
| YY_BREAK | |||
| case 47: | |||
| YY_RULE_SETUP | |||
| #line 100 "easymesh/easymesh-scanner.l" | |||
| { return token::T_DISC; } | |||
| YY_BREAK | |||
| case 48: | |||
| YY_RULE_SETUP | |||
| #line 101 "easymesh/easymesh-scanner.l" | |||
| { return token::T_EXPANDEDSTAR; } | |||
| YY_BREAK | |||
| case 49: | |||
| YY_RULE_SETUP | |||
| #line 102 "easymesh/easymesh-scanner.l" | |||
| { return token::T_FLATCHAMFBOX; } | |||
| YY_BREAK | |||
| case 50: | |||
| YY_RULE_SETUP | |||
| #line 103 "easymesh/easymesh-scanner.l" | |||
| { return token::T_QUAD; } | |||
| YY_BREAK | |||
| case 51: | |||
| YY_RULE_SETUP | |||
| #line 104 "easymesh/easymesh-scanner.l" | |||
| { return token::T_STAR; } | |||
| YY_BREAK | |||
| case 52: | |||
| YY_RULE_SETUP | |||
| #line 105 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SMOOTHCHAMFBOX; } | |||
| YY_BREAK | |||
| case 53: | |||
| YY_RULE_SETUP | |||
| #line 106 "easymesh/easymesh-scanner.l" | |||
| { return token::T_SPHERE; } | |||
| YY_BREAK | |||
| case 54: | |||
| YY_RULE_SETUP | |||
| #line 107 "easymesh/easymesh-scanner.l" | |||
| { return token::T_TRIANGLE; } | |||
| YY_BREAK | |||
| case 55: | |||
| YY_RULE_SETUP | |||
| #line 108 "easymesh/easymesh-scanner.l" | |||
| { return token::T_TORUS; } | |||
| YY_BREAK | |||
| case 41: | |||
| case 56: | |||
| YY_RULE_SETUP | |||
| #line 95 "easymesh/easymesh-scanner.l" | |||
| #line 110 "easymesh/easymesh-scanner.l" | |||
| { | |||
| uint32_t tmp = std::strtol(yytext + 1, NULL, 16); | |||
| yylval->u32val = 0x11000000u * (tmp >> 8) | |||
| @@ -907,9 +997,9 @@ YY_RULE_SETUP | |||
| | 0x000000ffu; | |||
| return token::COLOR; } | |||
| YY_BREAK | |||
| case 42: | |||
| case 57: | |||
| YY_RULE_SETUP | |||
| #line 102 "easymesh/easymesh-scanner.l" | |||
| #line 117 "easymesh/easymesh-scanner.l" | |||
| { | |||
| uint32_t tmp = std::strtol(yytext + 1, NULL, 16); | |||
| yylval->u32val = 0x11000000u * (tmp >> 12) | |||
| @@ -918,64 +1008,64 @@ YY_RULE_SETUP | |||
| | 0x00000011u * (tmp & 0xf); | |||
| return token::COLOR; } | |||
| YY_BREAK | |||
| case 43: | |||
| case 58: | |||
| YY_RULE_SETUP | |||
| #line 109 "easymesh/easymesh-scanner.l" | |||
| #line 124 "easymesh/easymesh-scanner.l" | |||
| { | |||
| yylval->u32val = 0xffu | |||
| | 0x100u * (uint32_t)std::strtol(yytext + 1, NULL, 16); | |||
| return token::COLOR; } | |||
| YY_BREAK | |||
| case 44: | |||
| case 59: | |||
| YY_RULE_SETUP | |||
| #line 113 "easymesh/easymesh-scanner.l" | |||
| #line 128 "easymesh/easymesh-scanner.l" | |||
| { | |||
| yylval->u32val = (uint32_t)std::strtol(yytext + 1, NULL, 16); | |||
| return token::COLOR; } | |||
| YY_BREAK | |||
| case 45: | |||
| case 60: | |||
| YY_RULE_SETUP | |||
| #line 116 "easymesh/easymesh-scanner.l" | |||
| #line 131 "easymesh/easymesh-scanner.l" | |||
| { | |||
| yylval->fval = std::atof(yytext); return token::NUMBER; } | |||
| YY_BREAK | |||
| case 46: | |||
| case 61: | |||
| YY_RULE_SETUP | |||
| #line 118 "easymesh/easymesh-scanner.l" | |||
| #line 133 "easymesh/easymesh-scanner.l" | |||
| { return token_type('-'); } | |||
| YY_BREAK | |||
| case 47: | |||
| case 62: | |||
| YY_RULE_SETUP | |||
| #line 119 "easymesh/easymesh-scanner.l" | |||
| #line 134 "easymesh/easymesh-scanner.l" | |||
| { return token_type('['); } | |||
| YY_BREAK | |||
| case 48: | |||
| case 63: | |||
| YY_RULE_SETUP | |||
| #line 120 "easymesh/easymesh-scanner.l" | |||
| #line 135 "easymesh/easymesh-scanner.l" | |||
| { return token_type(']'); } | |||
| YY_BREAK | |||
| case 49: | |||
| case 64: | |||
| YY_RULE_SETUP | |||
| #line 121 "easymesh/easymesh-scanner.l" | |||
| #line 136 "easymesh/easymesh-scanner.l" | |||
| { /* ignore this */ } | |||
| YY_BREAK | |||
| case 50: | |||
| /* rule 50 can match eol */ | |||
| case 65: | |||
| /* rule 65 can match eol */ | |||
| YY_RULE_SETUP | |||
| #line 122 "easymesh/easymesh-scanner.l" | |||
| #line 137 "easymesh/easymesh-scanner.l" | |||
| { /* ignore this */ } | |||
| YY_BREAK | |||
| case 51: | |||
| case 66: | |||
| YY_RULE_SETUP | |||
| #line 123 "easymesh/easymesh-scanner.l" | |||
| #line 138 "easymesh/easymesh-scanner.l" | |||
| { return token::T_ERROR; } | |||
| YY_BREAK | |||
| case 52: | |||
| case 67: | |||
| YY_RULE_SETUP | |||
| #line 125 "easymesh/easymesh-scanner.l" | |||
| #line 140 "easymesh/easymesh-scanner.l" | |||
| ECHO; | |||
| YY_BREAK | |||
| #line 979 "generated/easymesh-scanner.cpp" | |||
| #line 1069 "generated/easymesh-scanner.cpp" | |||
| case YY_STATE_EOF(INITIAL): | |||
| yyterminate(); | |||
| @@ -1357,7 +1447,7 @@ int yyFlexLexer::yy_get_next_buffer() | |||
| while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | |||
| { | |||
| yy_current_state = (int) yy_def[yy_current_state]; | |||
| if ( yy_current_state >= 83 ) | |||
| if ( yy_current_state >= 106 ) | |||
| yy_c = yy_meta[(unsigned int) yy_c]; | |||
| } | |||
| yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | |||
| @@ -1385,11 +1475,11 @@ int yyFlexLexer::yy_get_next_buffer() | |||
| while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | |||
| { | |||
| yy_current_state = (int) yy_def[yy_current_state]; | |||
| if ( yy_current_state >= 83 ) | |||
| if ( yy_current_state >= 106 ) | |||
| yy_c = yy_meta[(unsigned int) yy_c]; | |||
| } | |||
| yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | |||
| yy_is_jam = (yy_current_state == 82); | |||
| yy_is_jam = (yy_current_state == 105); | |||
| return yy_is_jam ? 0 : yy_current_state; | |||
| } | |||
| @@ -1876,7 +1966,7 @@ void EasyMeshfree (void * ptr ) | |||
| #define YYTABLES_NAME "yytables" | |||
| #line 125 "easymesh/easymesh-scanner.l" | |||
| #line 140 "easymesh/easymesh-scanner.l" | |||
| @@ -1,7 +1,11 @@ | |||
| //[sc#88f ab 4 4 4 tx 4 ab 4 4 4 tx -2 tax .4 .4 0] | |||
| //[sc#88f ab 4 4 4] | |||
| //[sc#ff2 asph 2 4 tx 4 tax 1 1 0] | |||
| [sc#ff2 asph 2 4] | |||
| //[sc#88f ab .25 1 1 tx .25 ab .25 1 1 tx .25 ab .25 1 1 tx .25 ab .25 1 1 tx .125 stx 10 0 0] | |||
| [sc#ff2 scb#2ff acg 13 2 1 1 8 8 4 4 0 1 tax -2 0 0 0] | |||
| //[sc#88f ab 4 4 4 tx 4 ab 4 4 4 tx -2 shz 1 0 0 0] | |||
| //[sc#ff2 asph 4 4 shx 0 0 0 0] | |||
| //[sc#ff2 asph 4 4 tax .4 .4 0] | |||
| //[sc#ff2 asph 2 4] | |||
| //[sc#ff2 acap 1 4 4] | |||
| //[sc#ff2 scb#ff2 ac 10 4 4 4 0 0 1] | |||
| //[sc#ff2 scb#ff2 ad 10 4 0] | |||