xray3d / gerber_x3 Goto Github PK
View Code? Open in Web Editor NEWProgram for preparing G-code for milling of printed circuit boards on CNC. You can use it as a converter to a PDF file.
Program for preparing G-code for milling of printed circuit boards on CNC. You can use it as a converter to a PDF file.
Firstly, thank you for producing such great open-source software. This is probably the best user interface I have ever used for a program that generates GCode.
I have made some minor changes to the code outputs specific to my old milling machine, and would like to recompile the changes into a new binary. I am working in Visual Studio (2022), and I think have installed all the necessary dependencies.
The CMake runs fine, but when I try to build a release, I get the following error: Error D8021 invalid numeric argument '/Wno-error=invalid-offsetof'
. It may have something to do with clipper and shapes, but I'm not sure what.
The complete build output is shown below.
Regards!
------ Build All started: Project: GERBER_X3-0.8.0, Configuration: x64-Release ------
[1/202] Automatic MOC and UIC for target shape
[2/202] Automatic MOC and UIC for target clipper
[3/202] Building CXX object shape_plugins\shape\CMakeFiles\shape.dir\shape.cpp.obj
FAILED: shape_plugins/shape/CMakeFiles/shape.dir/shape.cpp.obj
C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14301.307\bin\Hostx64\x64\cl.exe /nologo /TP -DCTRE -DMINGW_HAS_SECURE_API=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MESSAGELOGCONTEXT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DSHAPE_LIBRARY -DUNICODE -DWIN32 -DWIN64 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN64 -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape\shape_autogen\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\compile-time-regular-expressions\single-header -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\GGEasy -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\common -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\filetree -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gerber -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gi -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\graphicsview -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\thermal -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\tooldatabase -IC:\Qt\6.2.1\mingw81_64\include\QtCore -IC:\Qt\6.2.1\mingw81_64\include -IC:\Qt\6.2.1\mingw81_64\mkspecs\win32-g++ -IC:\Qt\6.2.1\mingw81_64\include\QtGui -IC:\Qt\6.2.1\mingw81_64\include\QtWidgets /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG -Wno-error=invalid-offsetof -std:c++20 /showIncludes /Foshape_plugins\shape\CMakeFiles\shape.dir\shape.cpp.obj /Fdshape_plugins\shape\CMakeFiles\shape.dir\shape.pdb /FS -c C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape\shape.cpp
C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\cl : Command line error D8021: invalid numeric argument '/Wno-error=invalid-offsetof'
[4/202] Building CXX object static_libs\clipper\CMakeFiles\clipper.dir\clipper_autogen\mocs_compilation.cpp.obj
FAILED: static_libs/clipper/CMakeFiles/clipper.dir/clipper_autogen/mocs_compilation.cpp.obj
C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14301.307\bin\Hostx64\x64\cl.exe /nologo /TP -DCLIPPER_LIBRARY -DCTRE -DMINGW_HAS_SECURE_API=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MESSAGELOGCONTEXT -DQT_NO_DEBUG -DUNICODE -DWIN32 -DWIN64 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN64 -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\static_libs\clipper\clipper_autogen\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\compile-time-regular-expressions\single-header -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\GGEasy -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\common -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\filetree -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\gerber -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\gi -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\graphicsview -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\thermal -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\tooldatabase -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\shape_plugins\shape -IC:\Qt\6.2.1\mingw81_64\include\QtCore -IC:\Qt\6.2.1\mingw81_64\include -IC:\Qt\6.2.1\mingw81_64\mkspecs\win32-g++ -IC:\Qt\6.2.1\mingw81_64\include\QtGui /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG -Wno-error=invalid-offsetof -std:c++20 /showIncludes /Fostatic_libs\clipper\CMakeFiles\clipper.dir\clipper_autogen\mocs_compilation.cpp.obj /Fdstatic_libs\clipper\CMakeFiles\clipper.dir\clipper.pdb /FS -c C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\static_libs\clipper\clipper_autogen\mocs_compilation.cpp
C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\cl : Command line error D8021: invalid numeric argument '/Wno-error=invalid-offsetof'
[5/202] Building CXX object shape_plugins\shape\CMakeFiles\shape.dir\shape_autogen\mocs_compilation.cpp.obj
FAILED: shape_plugins/shape/CMakeFiles/shape.dir/shape_autogen/mocs_compilation.cpp.obj
C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14301.307\bin\Hostx64\x64\cl.exe /nologo /TP -DCTRE -DMINGW_HAS_SECURE_API=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MESSAGELOGCONTEXT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DSHAPE_LIBRARY -DUNICODE -DWIN32 -DWIN64 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN64 -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape\shape_autogen\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\compile-time-regular-expressions\single-header -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\GGEasy -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\common -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\filetree -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gerber -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gi -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\graphicsview -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\thermal -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\tooldatabase -IC:\Qt\6.2.1\mingw81_64\include\QtCore -IC:\Qt\6.2.1\mingw81_64\include -IC:\Qt\6.2.1\mingw81_64\mkspecs\win32-g++ -IC:\Qt\6.2.1\mingw81_64\include\QtGui -IC:\Qt\6.2.1\mingw81_64\include\QtWidgets /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG -Wno-error=invalid-offsetof -std:c++20 /showIncludes /Foshape_plugins\shape\CMakeFiles\shape.dir\shape_autogen\mocs_compilation.cpp.obj /Fdshape_plugins\shape\CMakeFiles\shape.dir\shape.pdb /FS -c C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape\shape_autogen\mocs_compilation.cpp
C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\cl : Command line error D8021: invalid numeric argument '/Wno-error=invalid-offsetof'
[6/202] Building CXX object shape_plugins\shape\CMakeFiles\shape.dir\shnode.cpp.obj
FAILED: shape_plugins/shape/CMakeFiles/shape.dir/shnode.cpp.obj
C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14301.307\bin\Hostx64\x64\cl.exe /nologo /TP -DCTRE -DMINGW_HAS_SECURE_API=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MESSAGELOGCONTEXT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DSHAPE_LIBRARY -DUNICODE -DWIN32 -DWIN64 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN64 -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape\shape_autogen\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\compile-time-regular-expressions\single-header -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\GGEasy -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\common -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\filetree -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gerber -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gi -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\graphicsview -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\thermal -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\tooldatabase -IC:\Qt\6.2.1\mingw81_64\include\QtCore -IC:\Qt\6.2.1\mingw81_64\include -IC:\Qt\6.2.1\mingw81_64\mkspecs\win32-g++ -IC:\Qt\6.2.1\mingw81_64\include\QtGui -IC:\Qt\6.2.1\mingw81_64\include\QtWidgets /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG -Wno-error=invalid-offsetof -std:c++20 /showIncludes /Foshape_plugins\shape\CMakeFiles\shape.dir\shnode.cpp.obj /Fdshape_plugins\shape\CMakeFiles\shape.dir\shape.pdb /FS -c C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape\shnode.cpp
C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\cl : Command line error D8021: invalid numeric argument '/Wno-error=invalid-offsetof'
[7/202] Building CXX object shape_plugins\shape\CMakeFiles\shape.dir\shhandler.cpp.obj
FAILED: shape_plugins/shape/CMakeFiles/shape.dir/shhandler.cpp.obj
C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14301.307\bin\Hostx64\x64\cl.exe /nologo /TP -DCTRE -DMINGW_HAS_SECURE_API=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MESSAGELOGCONTEXT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DSHAPE_LIBRARY -DUNICODE -DWIN32 -DWIN64 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN64 -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\shape_plugins\shape\shape_autogen\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\compile-time-regular-expressions\single-header -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\GGEasy -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\common -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\filetree -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gerber -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\gi -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\graphicsview -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\thermal -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape....\static_libs\tooldatabase -IC:\Qt\6.2.1\mingw81_64\include\QtCore -IC:\Qt\6.2.1\mingw81_64\include -IC:\Qt\6.2.1\mingw81_64\mkspecs\win32-g++ -IC:\Qt\6.2.1\mingw81_64\include\QtGui -IC:\Qt\6.2.1\mingw81_64\include\QtWidgets /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG -Wno-error=invalid-offsetof -std:c++20 /showIncludes /Foshape_plugins\shape\CMakeFiles\shape.dir\shhandler.cpp.obj /Fdshape_plugins\shape\CMakeFiles\shape.dir\shape.pdb /FS -c C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\shape_plugins\shape\shhandler.cpp
C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\cl : Command line error D8021: invalid numeric argument '/Wno-error=invalid-offsetof'
[8/202] Building CXX object static_libs\clipper\CMakeFiles\clipper.dir\clipper.cpp.obj
FAILED: static_libs/clipper/CMakeFiles/clipper.dir/clipper.cpp.obj
C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14301.307\bin\Hostx64\x64\cl.exe /nologo /TP -DCLIPPER_LIBRARY -DCTRE -DMINGW_HAS_SECURE_API=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MESSAGELOGCONTEXT -DQT_NO_DEBUG -DUNICODE -DWIN32 -DWIN64 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN64 -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\static_libs\clipper\clipper_autogen\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\compile-time-regular-expressions\single-header -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\GGEasy -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\common -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\filetree -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\gerber -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\gi -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\graphicsview -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\thermal -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\tooldatabase -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\shape_plugins\shape -IC:\Qt\6.2.1\mingw81_64\include\QtCore -IC:\Qt\6.2.1\mingw81_64\include -IC:\Qt\6.2.1\mingw81_64\mkspecs\win32-g++ -IC:\Qt\6.2.1\mingw81_64\include\QtGui /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG -Wno-error=invalid-offsetof -std:c++20 /showIncludes /Fostatic_libs\clipper\CMakeFiles\clipper.dir\clipper.cpp.obj /Fdstatic_libs\clipper\CMakeFiles\clipper.dir\clipper.pdb /FS -c C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs\clipper\clipper.cpp
C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\cl : Command line error D8021: invalid numeric argument '/Wno-error=invalid-offsetof'
[9/202] Building CXX object static_libs\clipper\CMakeFiles\clipper.dir\myclipper.cpp.obj
FAILED: static_libs/clipper/CMakeFiles/clipper.dir/myclipper.cpp.obj
C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14301.307\bin\Hostx64\x64\cl.exe /nologo /TP -DCLIPPER_LIBRARY -DCTRE -DMINGW_HAS_SECURE_API=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MESSAGELOGCONTEXT -DQT_NO_DEBUG -DUNICODE -DWIN32 -DWIN64 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN64 -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\static_libs\clipper\clipper_autogen\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\magic_get\include -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\compile-time-regular-expressions\single-header -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\GGEasy -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\clipper -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\common -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\filetree -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\gerber -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\gi -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\graphicsview -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\thermal -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\static_libs\tooldatabase -IC:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs..\shape_plugins\shape -IC:\Qt\6.2.1\mingw81_64\include\QtCore -IC:\Qt\6.2.1\mingw81_64\include -IC:\Qt\6.2.1\mingw81_64\mkspecs\win32-g++ -IC:\Qt\6.2.1\mingw81_64\include\QtGui /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG -Wno-error=invalid-offsetof -std:c++20 /showIncludes /Fostatic_libs\clipper\CMakeFiles\clipper.dir\myclipper.cpp.obj /Fdstatic_libs\clipper\CMakeFiles\clipper.dir\clipper.pdb /FS -c C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\static_libs\clipper\myclipper.cpp
C:\Users\sbart\Documents\Projects\KLG\GERBER_X3-0.8.0.3_Modified\out\build\x64-Release\cl : Command line error D8021: invalid numeric argument '/Wno-error=invalid-offsetof'
[10/202] Automatic MOC and UIC for target gi
[11/202] Automatic MOC and UIC for target thermal
[12/202] Automatic MOC and UIC for target tooldatabase
ninja: build stopped: subcommand failed.
Build All failed.
Структура struct GraphicObject
используется как элемент QList, который в методе QList::node_construct() требует operator=(), однако он недоступен из-за того, что все поля константные.
Патч отменяет константность:
From 576509c1a8a02271e6a4408efaab220a63c570e1 Mon Sep 17 00:00:00 2001
From: ololoshka2871 <[email protected]>
Date: Tue, 14 May 2019 11:03:01 +0300
Subject: [PATCH 1/2] =?UTF-8?q?gerber/gbrvars.h:=20struct=20GraphicObject?=
=?UTF-8?q?=20=D0=A3=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BA=D0=BE?=
=?UTF-8?q?=D0=BD=D1=81=D1=82=D1=80=D0=B0=D0=BD=D1=82=D0=BD=D0=BE=D1=81?=
=?UTF-8?q?=D1=82=D1=8C=20=D1=81=20=D0=BF=D0=BE=D0=BB=D0=B5=D0=B9,=20?=
=?UTF-8?q?=D1=82=D0=B0=D0=BA=20=D0=BA=D0=B0=D0=BA=20=D1=8D=D1=82=D0=BE=20?=
=?UTF-8?q?=D0=B1=D0=BB=D0=BE=D0=BA=D0=B8=D1=80=D1=83=D0=B5=D1=82=20=D0=B3?=
=?UTF-8?q?=D0=B5=D0=BD=D0=B5=D1=80=D0=B0=D1=86=D0=B8=D1=8E=20=D0=BE=D0=BF?=
=?UTF-8?q?=D0=B5=D1=80=D0=B0=D1=82=D0=BE=D1=80=D0=B0=20=D0=BF=D1=80=D0=B8?=
=?UTF-8?q?=D1=81=D0=B2=D0=B0=D0=B8=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=BF?=
=?UTF-8?q?=D0=BE-=D1=83=D0=BC=D0=BE=D0=BB=D1=87=D0=B0=D0=BD=D0=B8=D1=8E,?=
=?UTF-8?q?=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D0=B9=20=D1=82=D1=80?=
=?UTF-8?q?=D0=B5=D0=B1=D1=83=D0=B5=D1=82=D1=81=D1=8F=20=D0=B4=D0=BB=D1=8F?=
=?UTF-8?q?=20QList<GraphicObject>::node=5Fconstruct()?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
gerber/gbrvars.h | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/gerber/gbrvars.h b/gerber/gbrvars.h
index 275db9b..4fefc9f 100644
--- a/gerber/gbrvars.h
+++ b/gerber/gbrvars.h
@@ -209,12 +209,17 @@ public:
inline void setRotating(double rotating) { m_rotating = rotating; }
};
+// QList<GraphicObject>::node_construct() uses operator=()
+// Gerber::GraphicObject& Gerber::GraphicObject::operator=(const Gerber::GraphicObject&)’
+// is implicitly deleted because the default definition would be ill-formed
+// so remove "const" from fields
struct GraphicObject {
explicit GraphicObject(
int id,
const State& state,
const Paths& paths,
- const File* gFile,
+ //const File* gFile, // invalid conversion from ‘const Gerber::File*’ to ‘Gerber::File*’
+ File* gFile,
const Path& path = Path())
: id(id)
, state(state)
@@ -223,11 +228,12 @@ struct GraphicObject {
, path(path)
{
}
- const int id;
- const State state;
- const Paths paths;
- const File* gFile;
- const Path path;
+
+ int id;
+ State state;
+ Paths paths;
+ File* gFile;
+ Path path;
};
} // namespace Gerber
--
2.21.0
я столкнулся с таким багом под Qt6 последней сборки
сперва думал, кривой DXF создал, грешил на ОС
но перепроверил на разных устройствах - баг есть
описываю
чертим прямоугольник
выбираем его
выбираем КАРМАН В НУТРИ
даем глубину 2 и больше миллиметров
жмем СОЗДАТЬ
и программа вылетает
если выбрать КАРМАН РАСТРОВЫЙ - G код создается
Версия: 0.8.0 preview
Дайте пожалуйста возможность вернуться к предыдущей цветовой теме (как в прошлых версиях).
Темные значки на темном фоне - это просто "вырви глаз" какой-то. Очень тяжело работать. Спасибо!
Добавьте по возможности поддержку сенсорного управления зумом, или хотя бы кнопки зума в основном окне программы.
Свободная незаземленная медь между дорожками может стать причиной паразитных связей. Для ВЧ плат ее просто необходимо убирать, хотя это требует времени и ресурса гравера. Но проблему таких паразитных связей можно решить, нарезав медь на мелкие квадратики наподобие "Copper Thieving". Это значительно ускорит изготовление платы и сохранит ресурс гравера. В принципе, достаточно разрешить устанавливать отступ больше, чем половина диаметра гравера, но специальный режим был бы весьма удобен.
Код: Выделить всё
0.1-Сверловка реперов
0.2-Отрез заготовки
1-Засветка фоторезиста
2-Засветка маски
3.x-Сверление/фрезеровка отверстий (по количеству рабочих инструментов)
4-Отрезка платы
Соответственно, единственное ручное тут - это добавление линии для отреза куска платы от остальной заготовки, остальное - однотипное накликивание.
5. Собственно, возможность обозначать как-то на рабочем поле саму изначальную заготовку (прямоугольный кусок текстолита заведомо известного размера) с возможностью подвигать относительно платы и автоматом сгенерить линии отрезки. Сейчас обхожусь фигурой "прямоугольник", но во-первых задавать его размеры через точки углов совсем не удобно, во-вторых хотелось бы фич авто-позиционирования платы (в идеале - включая поворот, а то я повернуть плату умею только перегенерируя gerber) и авто-генерации линий отреза маленькой заготовки под плату от большой.
PS: Мелочи:
6. Хотелось бы возможность удалить конкретную булавку. Как уже писал выше - я вырезаю из g-кода руками сверловку первой булавки - отверстие под неё уже есть на столе, а на заготовке сверлю ручками.
7. При перемещении булавок мышкой на поле - игнорируется привязка к сетке.
8. Почему-то при установке в "параметры g-кода" значений ноля координат выставляю, скажем, -10 - а после сохранения/открытия - там всё равно -10,010 или -10,025. Видимо, какая-то дискретность и странное округление.
На данный момент параметр "ускорение" задаётся в свойствах конкретной процедуры обработки.
При этом фактически, ускорение ограничено самим рабочим инструментом (его весом) и жёсткостью механики станка.
Предлагаю:
Добрый!
Для релиза 0.8.0 заново заполнял базу инструментов, заметил несколько ошибок:
Многие программы-анализаторы G-кода и G-код сендеры не принимают файлы со скобками и служебными символами.
Предлагаю скобки заменить на подчеркивания или пробелы.
Шаги, чтобы повторить проблему:
Обнаружил, что в методе void GCodeFile::save(const QString& name)
отсутствует case Thermal:
, поэтому case
завершался по варианту default
Решение case Thermal:
аналогично к другим типам траектории:
From 7c994607b69dca49bc69015b761ea133759d024a Mon Sep 17 00:00:00 2001
From: ololoshka2871 <[email protected]>
Date: Tue, 14 May 2019 11:05:26 +0300
Subject: [PATCH 2/2] =?UTF-8?q?G2G/gcode/gcode.cpp:=20210=20=D0=94=D0=BE?=
=?UTF-8?q?=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=20=D0=B2=D0=B0=D1=80=D0=B8?=
=?UTF-8?q?=D0=B0=D0=BD=D1=82=20=D0=B4=D0=BB=D1=8F=20switch,=20=D0=BA?=
=?UTF-8?q?=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D0=B9=20=D0=BD=D1=83=D0=B6=D0=B5?=
=?UTF-8?q?=D0=BD=20=D0=B4=D0=BB=D1=8F=20=D1=81=D0=BE=D1=85=D1=80=D0=B0?=
=?UTF-8?q?=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F=20G-=D0=BA=D0=BE=D0=B4=D0=B0=20?=
=?UTF-8?q?=D0=BE=D0=BF=D0=B5=D1=80=D0=B0=D1=86=D0=B8=D0=B8=20"Thermal"?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
G2G/gcode/gcode.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/G2G/gcode/gcode.cpp b/G2G/gcode/gcode.cpp
index 2b8c671..2772fd8 100644
--- a/G2G/gcode/gcode.cpp
+++ b/G2G/gcode/gcode.cpp
@@ -207,6 +207,7 @@ void GCodeFile::save(const QString& name)
case Profile:
case Pocket:
case Voronoi:
+ case Thermal:
saveProfilePocket();
break;
case Drilling:
@@ -375,4 +376,4 @@ void GCodeFile::save() const
void GCodeFile::open() const
{
-}
\ No newline at end of file
+}
--
2.21.0
Если файлы загружаются некорректно просьба присылать их сюда с пояснением скриншотом как должно быть.
If the files are loaded incorrectly, please send them here with an explanation of how it should be with a screenshot.
G21 G17 G90
M3
M3
G0X10.286Y9.644S0
G1S255 error 22
X10.309Y9.729F1200
X10.311Y9.738
X10.33Y9.955
Y9.964
And49
Проверил связку: гербер - G2G V 0.7.8.9 - PocketR - *.tap - Candle V 1.1.7 - CNC3018 GRBL V 1.1f. При моделировании УП в программе NC4 всё прошло без замечаний. Но при запуске этой УП в Candle в рабочем режиме и в режиме проверки на 5 строчке возникает ошибка 22. Часть УП с ошибкой в приложении. Причём если нажать кнопку "пропустить" остальная часть УП проходит без ошибок, хоть там и встречаются аналогичные команды. Перерыл форум, но так и не нашёл, где нужно копать.
Shturman
3-я строка повторяет 2-ю... зачем? Error 22 в 5-й строке скорей всего из-за того, что задали рабочее перемещение (G01), а скорости перемещения (F) нет, но зато присутствует скорость шпинделя (S255). И принято задавать вначале обороты, а уже потом включать его (S255 M3), Ошибки не критичные, но...
При перемещении булавок мышкой на поле - игнорируется привязка к сетке.
From #32
Подскажите, как и при каких условиях (пример программ, через которые делался экспорт dxf) читается dxf?
Пробовал через корел, разные версии годов, не видит контуров никаких.
Спасибо
Хотелось бы в "настройки" - "G-код" возможности привязать "формат строки с координатами" к машине (фрезер/лазер). В частности различия вызывает S-параметр с мощностью - для лазера он актуален (а-ля HLDI), для фрезера только мешается.
From #32
Импортируемый гербер-файл не содержал контура платы.
От программы не требовалось его обрабатывать,
Но программа все равно сгенерировала Г-код с управляющей траекторией "обхода контура", рассчитав его по граничным точкам, как прямоугольник.
Не могу внести диаметр инструмента простым вводом цифр в поле "диаметр".
Сначала работают только кнопки инкремента/декремента. После того, как 0.000 сменился на что угодно, ввод уже становится возможным.
Так же ведут себя другие элементы ввода.
Проверено на Win 7 x32 и Win 10 x64
При выборе шага растра 0.05мм и меньше программа уходит в долгий тайм-аут и не реагирует ни на что, пока не отрисует всё огромное количество линий растра.
Предлагаю сделать рендеринг по запросу пользователя. Т.е. чекбокс на панели фалов не взводить.
Здравствуйте,
Скорее всего вопрос глупый, не наблюдаю пункта "сырые вектора", которые были в ранних версиях. Всю программу истыкал, так и не нашел.
Подскажите где они в версии 0.8.
%TF.FileFunction,Component,L1,Top*%
%TA.AperFunction,ComponentOutline,Body*% <- ???
Некорректный разбор файлов с данными о компонентах от программы TARGET 3001.
В элемент попадает только первый элемент графического описания границ.
Выделенные элементы ПП с помощью Ctrl и мышки по цвету не отличаются от ещё не выделенных , что затрудняет этот этап работы.
Попробовал собрать ваш проект под Linux.
Я использую ArchLinux.
Я внес несколько исправлений в код для обхода ошибок компиляции.
В таком виде программа запускается и работает
Патч:
From a9faa04a242126ba4eef824fb9779358fb5b3831 Mon Sep 17 00:00:00 2001
From: ololoshka2871 <[email protected]>
Date: Tue, 7 May 2019 08:45:01 +0300
Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?=
=?UTF-8?q?=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B4=D0=BB=D1=8F=20=D1=81=D0=B1?=
=?UTF-8?q?=D0=BE=D1=80=D0=BA=D0=B8=20=D0=B2=20Linux=20(GCC=208.2=20+=20Qt?=
=?UTF-8?q?=205.12)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
G2G/aboutform.cpp | 2 ++
G2G/filetree/fileholder.cpp | 2 +-
G2G/gcode/toolpathcreator.h | 3 ++-
G2G/settingsdialog.cpp | 9 ++++++---
G2G/settingsdialog.h | 3 ++-
excellon/excellondialog.cpp | 1 +
excellon/exparser.cpp | 1 +
excellon/exvars.h | 6 +++++-
gerber/gbrfile.h | 6 ++++--
voronoi/halfedge.cpp | 2 ++
voronoi/voronoi.cpp | 2 ++
11 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/G2G/aboutform.cpp b/G2G/aboutform.cpp
index 7f1eeab..a9a9c28 100644
--- a/G2G/aboutform.cpp
+++ b/G2G/aboutform.cpp
@@ -9,6 +9,8 @@ AboutForm::AboutForm(QWidget* parent)
ui->setupUi(this);
#ifdef MINGW_DDK_H
QString str(QString(__TIMESTAMP__).append("<br/>MINGW: ") + QString::number(__MINGW32_MAJOR_VERSION) + "." + QString::number(__MINGW32_MINOR_VERSION));
+#elif __GNUG__ // specific variant for GCC
+ QString str(QString(__TIMESTAMP__).append("<br/>GCC_VER: ") + QString(__VERSION__));
#else
QString str(QString(__TIMESTAMP__).append("<br/>MSC_VER: ") + QString::number(_MSC_VER));
#endif
diff --git a/G2G/filetree/fileholder.cpp b/G2G/filetree/fileholder.cpp
index ac466cb..2f1cd3a 100644
--- a/G2G/filetree/fileholder.cpp
+++ b/G2G/filetree/fileholder.cpp
@@ -1,4 +1,4 @@
-#include "FileHolder.h"
+#include "fileholder.h" // filename case-sensitive
//QMap<int, QSharedPointer<Drill>> FileHolder::m_drlFiles;
//QMap<int, QSharedPointer<G::File>> FileHolder::m_gerberFiles;
diff --git a/G2G/gcode/toolpathcreator.h b/G2G/gcode/toolpathcreator.h
index cf1858e..3fad987 100644
--- a/G2G/gcode/toolpathcreator.h
+++ b/G2G/gcode/toolpathcreator.h
@@ -31,7 +31,8 @@ void fixBegin(Path& path);
class ToolPathCreator : public QObject {
Q_OBJECT
- friend class Clipper;
+ // friend class Clipper; // clipper.c:1619 ‘static void ToolPathCreator::progressOrCancel()’ is private within this context
+ friend class ClipperLib::Clipper;
public:
static ToolPathCreator* self;
diff --git a/G2G/settingsdialog.cpp b/G2G/settingsdialog.cpp
index 0910fa4..cae4f19 100644
--- a/G2G/settingsdialog.cpp
+++ b/G2G/settingsdialog.cpp
@@ -7,7 +7,8 @@
const int gridColor = 100;
-const QColor defaultColor[Colors::Count]{
+//const QColor defaultColor[Colors::Count]{ // size of array ‘defaultColor’ has non-integral type ‘Colors’
+const QColor defaultColor[(size_t)Colors::Count] {
QColor(), //Background
QColor(255, 255, 0, 120), //Shtift
QColor(Qt::gray), //CutArea
@@ -21,7 +22,8 @@ const QColor defaultColor[Colors::Count]{
QColor(Qt::red) //G0
};
-const QString colorName[Colors::Count]{
+//const QString colorName[Colors::Count]{ // size of array ‘colorName’ has non-integral type ‘Colors’
+const QString colorName[(size_t)Colors::Count]{
"Background",
"Shtift",
"CutArea",
@@ -35,7 +37,8 @@ const QString colorName[Colors::Count]{
"G0",
};
-QColor SettingsDialog::m_color[Colors::Count]{
+//QColor SettingsDialog::m_color[Colors::Count]{ // size of array ‘SettingsDialog::m_color’ has non-integral type ‘Colors’
+QColor SettingsDialog::m_color[(size_t)Colors::Count]{
QColor(), //Background
QColor(255, 255, 0, 120), //Shtift
QColor(Qt::gray), //CutArea
diff --git a/G2G/settingsdialog.h b/G2G/settingsdialog.h
index 9afb026..bf471b9 100644
--- a/G2G/settingsdialog.h
+++ b/G2G/settingsdialog.h
@@ -43,7 +43,8 @@ private:
void onScrollBarValueChanged(int value);
void onListCategoriesCurrentRowChanged(int currentRow);
- static QColor m_color[Colors::Count];
+ //static QColor m_color[Colors::Count]; // size of array ‘m_color’ has non-integral type ‘Colors’
+ static QColor m_color[(size_t)Colors::Count];
};
#endif // SETTINGSDIALOG_H
diff --git a/excellon/excellondialog.cpp b/excellon/excellondialog.cpp
index a2c57b1..a4d516e 100644
--- a/excellon/excellondialog.cpp
+++ b/excellon/excellondialog.cpp
@@ -3,6 +3,7 @@
#include "ui_excellondialog.h"
#include <graphicsview.h>
#include <scene.h>
+#include <cmath> // pow()
using namespace Excellon;
diff --git a/excellon/exparser.cpp b/excellon/exparser.cpp
index 8ec6182..7b7bae2 100644
--- a/excellon/exparser.cpp
+++ b/excellon/exparser.cpp
@@ -2,6 +2,7 @@
#include "exfile.h"
#include <QFile>
+#include <cmath> // pow()
using namespace Excellon;
diff --git a/excellon/exvars.h b/excellon/exvars.h
index 52b30d5..541a706 100644
--- a/excellon/exvars.h
+++ b/excellon/exvars.h
@@ -202,7 +202,11 @@ public:
{
}
- const File* const file = nullptr;
+ // QList<T>::node_construct() -> *reinterpret_cast<T*>(n) = t; uses operator=(const Hole&),
+ // but it's deleted, because field "file" is "const",
+ // so, remove "const"
+ //const File* const file = nullptr;
+ File* file = nullptr;
State state;
DrillItem* item = nullptr;
};
diff --git a/gerber/gbrfile.h b/gerber/gbrfile.h
index 0c0a86f..e9a5833 100644
--- a/gerber/gbrfile.h
+++ b/gerber/gbrfile.h
@@ -83,8 +83,10 @@ private:
}
}
};
-
-Q_DECLARE_METATYPE(File)
+// specialization of ‘template<class T> struct QMetaTypeId’ in different namespace
+//Q_DECLARE_METATYPE(Gerber::File)
}
+Q_DECLARE_METATYPE(Gerber::File)
+
#endif // GFILE_H
diff --git a/voronoi/halfedge.cpp b/voronoi/halfedge.cpp
index d4ed676..3ac5164 100644
--- a/voronoi/halfedge.cpp
+++ b/voronoi/halfedge.cpp
@@ -1,5 +1,7 @@
#include "halfedge.h"
#include <QObject>
+#include <cmath> // std::atan2()
+
namespace Vrn {
Halfedge::Halfedge(Edge* edge, Vertex* lSite, Vertex* rSite)
{
diff --git a/voronoi/voronoi.cpp b/voronoi/voronoi.cpp
index 84055b9..e0e84a1 100644
--- a/voronoi/voronoi.cpp
+++ b/voronoi/voronoi.cpp
@@ -1,6 +1,8 @@
#include "voronoi.h"
#include <QElapsedTimer>
#include <QElapsedTimer>
+#include <cmath> // sqrt(), floor()
+
namespace Vrn {
Voronoi::Voronoi()
{
--
2.20.1
Возможность программного управления - процесс изготовления довольно типовой и хотелось бы (скриптами дёргая софтину с командной строки или ещё как) иметь возможность "в один клик" получать набор УП для разных этапов. Да, понимаю, что не для всех, но у меня например процесс очень типовой и даже файлы называю однотипно
0.1-Сверловка реперов
0.2-Отрез заготовки
1-Засветка фоторезиста
2-Засветка маски
3.x-Сверление/фрезеровка отверстий (по количеству рабочих инструментов)
4-Отрезка платы
Соответственно, единственное ручное тут - это добавление линии для отреза куска платы от остальной заготовки, остальное - однотипное накликивание.
From #32
Хотелось бы возможность удалить конкретную булавку. Как уже писал выше - я вырезаю из g-кода руками сверловку первой булавки - отверстие под неё уже есть на столе, а на заготовке сверлю ручками.
From #32
собственно вопрос в названии.
допустим при фрезеровке хочется проходить по 0.3мм глубины за раз
В параметрах инструмента, в блоке "Параметры резания", параметр "Отступ" нельзя сделать равным 0. Я так понимаю, если его сделать равным нулю, фреза должна делать один проход на данной глубине реза. Сейчас фреза делает два прохода, соответственно уходит в два раза больше времени на вырезание контура платы.
В пункте профиль, слово "длинна" с ошибкой (где мосты)
Не сохраняется инструмент в базе инструментов
Если зайти в настройки инструмента и ничего не нажимать то можно создать корневую группу, а вот если щелкнуть на любой инструмент или группу , то корневую уже не создать
Добавьте поддержку linux и mac os
Возможность обозначать как-то на рабочем поле саму изначальную заготовку (прямоугольный кусок текстолита заведомо известного размера) с возможностью подвигать относительно платы и автоматом сгенерить линии отрезки. Сейчас обхожусь фигурой "прямоугольник", но во-первых задавать его размеры через точки углов совсем не удобно, во-вторых хотелось бы фич авто-позиционирования платы (в идеале - включая поворот, а то я повернуть плату умею только перегенерируя gerber) и авто-генерации линий отреза маленькой заготовки под плату от большой.
From #32
Сделать Поведение ручек предсказуемым и одинаковым для всех Shape`ов на стадии создания и редактирования .
Build 0.8.0.0 Mar 14 2021
В английском меню : Viev - должно быть View
не ошибко, но режет глаз - пункт меню Paths - множественное число. Обычно принято использовать единственное число Path
Меню View -> Fit best - Обычно используют Best Fit, или Fit to screen
на булавке чекбокс "Used" - это "использованный" - должно быть "Use" или "In use"
https://www.cnc-club.ru/forum/viewtopic.php?p=584190#p584190
Да, за галку настройки куда сохранять - огромное спасибо, так намного удобнее. Но есть еще одно небольшое пожелание к сохранению. Вот я открыл герберы, сохранил проект в папку с герберами, и начинаю сохранять УПшки. Если я хочу УПшки сохранить в другую папку - приходится каждой указывать в какую папку сохранять. Было бы удобнее чтобы при сохранении помнилась последняя папка в которую сохранялась предыдущая УП и сразу предлагало сохранять туда.
Нельзя ли сделать, чтобы зум менялся колесиком мышки? Как, например, в Aspire или VCarve.
Как задать высоту перемещения для каждого инструмента отдельно ? или хотябы для сверловки отдельно
Объясню: При гравировке дорожек высота в 0.3 мм нормально ( так как есть карта высот)
а вот при сверловке или вырезе платы нужно другую высоту ( так как не всегда есть карта высот ) и может одна из плат после вырез приподняться.
Нашел время попробовать собрать новую версию.
И она собирается в Linux с минимальными исправлениями.
Вот патч.
---
G2G/G2G.pro | 9 ++++++++-
G2G/project.cpp | 5 ++++-
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/G2G/G2G.pro b/G2G/G2G.pro
index ddd1780..f1c0408 100644
--- a/G2G/G2G.pro
+++ b/G2G/G2G.pro
@@ -21,8 +21,15 @@ msvc* {
gcc* {
QMAKE_CXXFLAGS += -std=c++1z
- LIBS += -lsetupapi -lAdvapi32 -lpsapi
RC_FILE = myapp.rc
+
+ win32 {
+ LIBS += -lsetupapi -lAdvapi32 -lpsapi
+ }
+}
+
+linux* {
+ DEFINES += linux
}
diff --git a/G2G/project.cpp b/G2G/project.cpp
index c0d23d6..fc931ef 100644
--- a/G2G/project.cpp
+++ b/G2G/project.cpp
@@ -7,7 +7,10 @@
//#include <WinNT.h>
#include <filetree/filemodel.h>
#include <forms/gcodepropertiesform.h>
+
+#ifndef linux
#include <qt_windows.h>
+#endif
QMap<int, QSharedPointer<AbstractFile>> Project::m_files;
bool Project::m_isModified = false;
@@ -263,7 +266,7 @@ bool operator<(const QPair<Tool, Side>& p1, const QPair<Tool, Side>& p2)
void Project::saveSelectedToolpaths()
{
- QVector<GCode::File*> files(files<GCode::File>());
+ QVector<GCode::File*> files(Project::files<GCode::File>());
for (int i = 0; i < files.size(); ++i) {
if (!files[i]->itemGroup()->isVisible())
files.remove(i--);
--
2.24.0
При сохранении УП сверловки закрывается. Ошибок не выдает. Сверловка в формате .xln
Добавить возможность редактирования созданной УП из дерева файлов.
Загружаю отверстия , если в дюймах то большие получаются, если в мм то размер норма, а вот расстояние между ними большое.
И второй вопрос как их фрезеровать ? тоесть 1 мм врезой вырезать 3мм отверстие, что выбирать ?
Не работает или криво работает настройка вывода инфо о Г-Коде.
I downloaded the program for x86, I start and gives an error:
My PC: hp probook 470, w10x64
Installed at https://support.microsoft.com/en-us/help/2977003.
Rebooted, but the error is the same.
I tried to install Qt5 https://www.qt.io/download-thank-you, but it also did not help, maybe something else is needed?
Добрый день!
Опять вылез баг при разбиение Вороного.. один пад остался висеть в воздухе, отрезанный от все остальных. Проект не сохранил, т.к. спешил. ((( Использовал тестую версию G2G. Выгружал из диптрейс в весрию Gerber X2
Не обновляется, возможно по таймеру будут.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.