diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index f3817ab..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "dependencies/Triangle.NET"] - path = dependencies/Triangle.NET - url = https://github.com/eppz/Triangle.NET.git diff --git a/AutoPanelBuilder/AutoPanelBuilder.csproj b/AutoPanelBuilder/AutoPanelBuilder.csproj index 1f93bd9..82f484a 100644 --- a/AutoPanelBuilder/AutoPanelBuilder.csproj +++ b/AutoPanelBuilder/AutoPanelBuilder.csproj @@ -46,7 +46,7 @@ - ..\packages\Triangle.0.0.6-Beta3\lib\net45\Triangle.dll + ..\GerberProjects\packages\Triangle.0.0.6-Beta3\lib\net45\Triangle.dll @@ -67,4 +67,4 @@ - \ No newline at end of file + diff --git a/DirtyPCBs/DirtyPCB_BoardStats/DirtyPCB_BoardStats.csproj b/DirtyPCBs/DirtyPCB_BoardStats/DirtyPCB_BoardStats.csproj index 3282782..f5c320f 100644 --- a/DirtyPCBs/DirtyPCB_BoardStats/DirtyPCB_BoardStats.csproj +++ b/DirtyPCBs/DirtyPCB_BoardStats/DirtyPCB_BoardStats.csproj @@ -37,8 +37,8 @@ favicon.ico - - ..\..\GerberProjects\packages\DotNetZip.1.10.1\lib\net20\DotNetZip.dll + + ..\..\GerberProjects\packages\DotNetZip.1.11.0\lib\net20\DotNetZip.dll True @@ -76,4 +76,4 @@ --> - \ No newline at end of file + diff --git a/GerberAnalyse/GerberAnalyse.csproj b/GerberAnalyse/GerberAnalyse.csproj index 9835036..06914b8 100644 --- a/GerberAnalyse/GerberAnalyse.csproj +++ b/GerberAnalyse/GerberAnalyse.csproj @@ -36,8 +36,8 @@ favicon.ico - - ..\GerberProjects\packages\DotNetZip.1.10.1\lib\net20\DotNetZip.dll + + ..\GerberProjects\packages\DotNetZip.1.11.0\lib\net20\DotNetZip.dll @@ -72,4 +72,4 @@ --> - \ No newline at end of file + diff --git a/GerberLibrary/GerberLibrary.csproj b/GerberLibrary/GerberLibrary.csproj index 9204c54..be7c143 100644 --- a/GerberLibrary/GerberLibrary.csproj +++ b/GerberLibrary/GerberLibrary.csproj @@ -67,6 +67,9 @@ + + ..\GerberProjects\packages\Triangle.0.0.6-Beta3\lib\net45\Triangle.dll + @@ -112,12 +115,7 @@ - - - {f7907a0a-b75f-400b-9e78-bfad00db4d6b} - Triangle - - + - \ No newline at end of file + diff --git a/GerberPanelizer/GerberPanelize.cs b/GerberPanelizer/GerberPanelize.cs index b30d7fc..59ed2b7 100644 --- a/GerberPanelizer/GerberPanelize.cs +++ b/GerberPanelizer/GerberPanelize.cs @@ -656,7 +656,7 @@ private void glControl1_Paint(object sender, PaintEventArgs e) GL.Disable(EnableCap.DepthTest); GL.Enable(EnableCap.Blend); - GL.BlendFunc(BlendingFactorSrc.SrcAlpha, BlendingFactorDest.OneMinusSrcAlpha); + GL.BlendFunc(BlendingFactor.SrcAlpha, BlendingFactor.OneMinusSrcAlpha); GL.Hint(HintTarget.LineSmoothHint, HintMode.Nicest); GL.Hint(HintTarget.PointSmoothHint, HintMode.Nicest); diff --git a/GerberPanelizer/GerberPanelize.csproj b/GerberPanelizer/GerberPanelize.csproj index 6b0735e..255d947 100644 --- a/GerberPanelizer/GerberPanelize.csproj +++ b/GerberPanelizer/GerberPanelize.csproj @@ -61,12 +61,12 @@ app.manifest - - ..\GerberProjects\packages\OpenTK.1.1.2349.61993\lib\NET40\OpenTK.dll + + ..\GerberProjects\packages\OpenTK.3.0.1\lib\net20\OpenTK.dll True - - ..\GerberProjects\packages\OpenTK.GLControl.1.1.2349.61993\lib\NET40\OpenTK.GLControl.dll + + ..\GerberProjects\packages\OpenTK.GLControl.3.0.1\lib\net20\OpenTK.GLControl.dll True @@ -261,4 +261,4 @@ --> - \ No newline at end of file + diff --git a/GerberPanelizer/QuickFont/QFont.cs b/GerberPanelizer/QuickFont/QFont.cs index 0ab0d53..fa97c9d 100644 --- a/GerberPanelizer/QuickFont/QFont.cs +++ b/GerberPanelizer/QuickFont/QFont.cs @@ -588,7 +588,7 @@ private SizeF PrintOrMeasure(string text, QFontAlignment alignment, bool measure if (Options.UseDefaultBlendFunction) { - GL.BlendFunc(BlendingFactorSrc.SrcAlpha, BlendingFactorDest.OneMinusSrcAlpha); + GL.BlendFunc(BlendingFactor.SrcAlpha, BlendingFactor.OneMinusSrcAlpha); } } @@ -1137,7 +1137,7 @@ private SizeF PrintOrMeasure(ProcessedText processedText, bool measureOnly) if (Options.UseDefaultBlendFunction) { - GL.BlendFunc(BlendingFactorSrc.SrcAlpha, BlendingFactorDest.OneMinusSrcAlpha); + GL.BlendFunc(BlendingFactor.SrcAlpha, BlendingFactor.OneMinusSrcAlpha); } } diff --git a/GerberPanelizer/QuickFont/QuickFont.csproj b/GerberPanelizer/QuickFont/QuickFont.csproj index a441858..a74356a 100644 --- a/GerberPanelizer/QuickFont/QuickFont.csproj +++ b/GerberPanelizer/QuickFont/QuickFont.csproj @@ -56,8 +56,8 @@ MinimumRecommendedRules.ruleset - - ..\GerberCombinerBuilder\bin\Release\OpenTK.dll + + ..\GerberProjects\packages\OpenTK.3.0.1\lib\net20\OpenTK.dll @@ -99,4 +99,4 @@ --> - \ No newline at end of file + diff --git a/GerberPanelizer/packages.config b/GerberPanelizer/packages.config index 0714e96..5e886ff 100644 --- a/GerberPanelizer/packages.config +++ b/GerberPanelizer/packages.config @@ -1,7 +1,7 @@  - - + + - \ No newline at end of file + diff --git a/GerberProjects/GerberProjects.sln b/GerberProjects/GerberProjects.sln index 436de85..499ba64 100644 --- a/GerberProjects/GerberProjects.sln +++ b/GerberProjects/GerberProjects.sln @@ -78,10 +78,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FrontPanelBuilder", "..\Fro EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GerberToDxf", "..\GerberToDxf\GerberToDxf\GerberToDxf.csproj", "{843057E6-2FC0-4C78-AAB3-197C60AE72BF}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dependencies", "dependencies", "{AAAFD0A7-47D1-4530-86CA-B68C5790E7C1}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Triangle", "..\dependencies\Triangle.NET\Triangle.NET\Triangle\Triangle.csproj", "{F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -330,14 +326,6 @@ Global {843057E6-2FC0-4C78-AAB3-197C60AE72BF}.Release|Any CPU.Build.0 = Release|Any CPU {843057E6-2FC0-4C78-AAB3-197C60AE72BF}.Release|x86.ActiveCfg = Release|Any CPU {843057E6-2FC0-4C78-AAB3-197C60AE72BF}.Release|x86.Build.0 = Release|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Debug|x86.ActiveCfg = Debug|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Debug|x86.Build.0 = Debug|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Release|Any CPU.Build.0 = Release|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Release|x86.ActiveCfg = Release|Any CPU - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -373,10 +361,6 @@ Global {822016C1-52B8-449C-BE7A-D3ABA943B8B6} = {5B17443F-D48D-429E-83E3-2C7DCA8C6ED3} {485C42A7-B359-4091-9BE7-7B8E99A8D7EA} = {5B17443F-D48D-429E-83E3-2C7DCA8C6ED3} {843057E6-2FC0-4C78-AAB3-197C60AE72BF} = {F705564A-6956-4675-A941-6ED916ADC0AD} - {F7907A0A-B75F-400B-9E78-BFAD00DB4D6B} = {AAAFD0A7-47D1-4530-86CA-B68C5790E7C1} - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {D3E1B175-5E33-4A46-8DBC-A8B9B4A50987} EndGlobalSection GlobalSection(Performance) = preSolution HasPerformanceSessions = true diff --git a/GerberViewer/GLGraphicsInterface.cs b/GerberViewer/GLGraphicsInterface.cs old mode 100644 new mode 100755 index 1208dec..a2d39fe --- a/GerberViewer/GLGraphicsInterface.cs +++ b/GerberViewer/GLGraphicsInterface.cs @@ -542,9 +542,9 @@ public void Link() AttributeInfo info = new AttributeInfo(); int length = 0; - StringBuilder name = new StringBuilder(); + String name; - GL.GetActiveAttrib(ProgramID, i, 256, out length, out info.size, out info.type, name); + GL.GetActiveAttrib(ProgramID, i, 256, out length, out info.size, out info.type, out name); info.name = name.ToString(); info.address = GL.GetAttribLocation(ProgramID, info.name); @@ -556,9 +556,9 @@ public void Link() UniformInfo info = new UniformInfo(); int length = 0; - StringBuilder name = new StringBuilder(); + String name; - GL.GetActiveUniform(ProgramID, i, 256, out length, out info.size, out info.type, name); + GL.GetActiveUniform(ProgramID, i, 256, out length, out info.size, out info.type, out name); info.name = name.ToString(); Uniforms.Add(name.ToString(), info); diff --git a/GerberViewer/GerberViewer.csproj b/GerberViewer/GerberViewer.csproj index 54b0211..fafef93 100644 --- a/GerberViewer/GerberViewer.csproj +++ b/GerberViewer/GerberViewer.csproj @@ -41,16 +41,16 @@ favicon.ico - - ..\GerberProjects\packages\DotNetZip.1.10.1\lib\net20\DotNetZip.dll + + ..\GerberProjects\packages\DotNetZip.1.11.0\lib\net20\DotNetZip.dll True - - ..\GerberProjects\packages\OpenTK.Next.1.2.2336.6514-pre\lib\net20\OpenTK.dll + + ..\GerberProjects\packages\OpenTK.3.0.1\lib\net20\OpenTK.dll True - - ..\GerberProjects\packages\OpenTK.Next.GLControl.1.2.2336.6514-pre\lib\net20\OpenTK.GLControl.dll + + ..\GerberProjects\packages\OpenTK.GLControl.3.0.1\lib\net20\OpenTK.GLControl.dll True @@ -68,12 +68,12 @@ ..\GerberProjects\packages\Triangle.0.0.6-Beta3\lib\net45\Triangle.dll True - - ..\GerberProjects\packages\DockPanelSuite.2.11.0\lib\net40\WeifenLuo.WinFormsUI.Docking.dll + + ..\GerberProjects\packages\DockPanelSuite.3.0.6\lib\net40\WeifenLuo.WinFormsUI.Docking.dll True - - ..\GerberProjects\packages\DockPanelSuite.ThemeVS2015.2.11.0\lib\net40\WeifenLuo.WinFormsUI.Docking.ThemeVS2015.dll + + ..\GerberProjects\packages\DockPanelSuite.ThemeVS2015.3.0.6\lib\net40\WeifenLuo.WinFormsUI.Docking.ThemeVS2015.dll True @@ -144,4 +144,4 @@ - \ No newline at end of file + diff --git a/GerberViewer/LayerDisplay.cs b/GerberViewer/LayerDisplay.cs old mode 100644 new mode 100755 index 2db718a..f969e55 --- a/GerberViewer/LayerDisplay.cs +++ b/GerberViewer/LayerDisplay.cs @@ -174,7 +174,7 @@ private void Glcontrol1_Paint(object sender, PaintEventArgs e) GL.UniformMatrix4(MainShader.Uniforms["trans"].address, false, ref M); GL.UniformMatrix4(MainShader.Uniforms["view"].address, false, ref View); GL.Enable(EnableCap.Blend); - GL.BlendFunc(BlendingFactorSrc.SrcAlpha, BlendingFactorDest.OneMinusSrcAlpha); + GL.BlendFunc(BlendingFactor.SrcAlpha, BlendingFactor.OneMinusSrcAlpha); VBOCache.RenderVBO(MainShader); MainShader.UnBind(); //DrawGerbersToGraphicsInterface(Bounds, GI); diff --git a/GerberViewer/packages.config b/GerberViewer/packages.config index af742cf..e8120b9 100644 --- a/GerberViewer/packages.config +++ b/GerberViewer/packages.config @@ -3,8 +3,7 @@ - - - + + - \ No newline at end of file + diff --git a/Project_Utilities/TilingLibrary/TINRS-ArtWork.csproj b/Project_Utilities/TilingLibrary/TINRS-ArtWork.csproj index 4bb6443..7aabdf3 100644 --- a/Project_Utilities/TilingLibrary/TINRS-ArtWork.csproj +++ b/Project_Utilities/TilingLibrary/TINRS-ArtWork.csproj @@ -40,7 +40,7 @@ - ..\..\GerberProjects\packages\GlmNet.0.5.1.0\lib\net40\GlmNet.dll + ..\..\GerberProjects\packages\GlmNet.0.5.1\lib\net40\GlmNet.dll @@ -82,4 +82,4 @@ --> - \ No newline at end of file + diff --git a/README.md b/README.md index e8ed88b..ced9671 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,16 @@ Tools to load/edit/create/panelize/prerender sets of gerber files. A recent build is available on http://blog.thisisnotrocketscience.nl/projects/pcb-panelizer/ -The .sln file (for VS2015 community edition) can be found in the GerberProjects folder. - All tools are clean C# and will run fine under Mono. Please see http://www.thisisnotrocketscience.nl for news/updates/blogs Follow us on twitter: @rocket_not + +## Building +### Visual Studio 2015 upwards +Open the `GerberProjects/GerberProjects.sln` solution, convert it to your version of Visual Studio +(if necessary), then build it. Dependencies should be fetched automatically via Nuget. + +### Linux +Run `./build.sh`. Dependencies should be automatically fetched. diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..d203c93 --- /dev/null +++ b/build.sh @@ -0,0 +1,35 @@ +#!/bin/sh + +set -euo pipefail +set -x + +nuget () { + package="$1" + version="$2" + zip="`mktemp`.zip" + url="https://www.nuget.org/api/v2/package/$package/$version" + dir="GerberProjects/packages/$package.$version" + + test -d "$dir" || { + wget "$url" -O "$zip" + mkdir -p "$dir" + unzip "$zip" -d "$dir" + rm "$zip" + } +} + +# Needed as xbuild gets confused about some modern terminals +export TERM=xterm + +nuget Triangle 0.0.6-Beta3 +nuget DotNetZip 1.11.0 +nuget OpenTK 3.0.1 +nuget OpenTK.GLControl 3.0.1 +nuget netDXF 2.0.2 +nuget netDXF 0.9.3 +nuget GlmNet 0.5.1 +nuget DockPanelSuite 3.0.6 +nuget DockPanelSuite.ThemeVS2015 3.0.6 + + +xbuild /p:Configuration=Debug GerberProjects/GerberProjects.sln diff --git a/dependencies/Triangle.NET b/dependencies/Triangle.NET deleted file mode 160000 index 6f0e55b..0000000 --- a/dependencies/Triangle.NET +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 6f0e55b876d515aa7a61270864c56e98710d785b