* Merge TRUNK
This commit is contained in:
commit
6f1b2e8265
|
@ -52,35 +52,6 @@
|
||||||
#include <textures/text_silk.h>
|
#include <textures/text_silk.h>
|
||||||
#include <textures/text_pcb.h>
|
#include <textures/text_pcb.h>
|
||||||
|
|
||||||
// -----------------
|
|
||||||
// helper function (from wxWidgets, opengl/cube.cpp sample
|
|
||||||
// -----------------
|
|
||||||
void CheckGLError(const char *aFileName, int aLineNumber)
|
|
||||||
{
|
|
||||||
GLenum errLast = GL_NO_ERROR;
|
|
||||||
|
|
||||||
for ( ; ; )
|
|
||||||
{
|
|
||||||
GLenum err = glGetError();
|
|
||||||
if ( err == GL_NO_ERROR )
|
|
||||||
return;
|
|
||||||
|
|
||||||
// normally the error is reset by the call to glGetError() but if
|
|
||||||
// glGetError() itself returns an error, we risk looping forever here
|
|
||||||
// so check that we get a different error than the last time
|
|
||||||
if ( err == errLast )
|
|
||||||
{
|
|
||||||
wxLogError(wxT("OpenGL error state couldn't be reset."));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
errLast = err;
|
|
||||||
|
|
||||||
wxLogError( wxT( "OpenGL error %d At: %s, line: %d" ), err,
|
|
||||||
GetChars( FROM_UTF8( aFileName ) ), aLineNumber );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* EDA_3D_CANVAS implementation
|
* EDA_3D_CANVAS implementation
|
||||||
|
|
|
@ -42,6 +42,35 @@
|
||||||
|
|
||||||
#define TEXTURE_PCB_SCALE 5.0
|
#define TEXTURE_PCB_SCALE 5.0
|
||||||
|
|
||||||
|
// -----------------
|
||||||
|
// helper function (from wxWidgets, opengl/cube.cpp sample
|
||||||
|
// -----------------
|
||||||
|
void CheckGLError(const char *aFileName, int aLineNumber)
|
||||||
|
{
|
||||||
|
GLenum errLast = GL_NO_ERROR;
|
||||||
|
|
||||||
|
for ( ; ; )
|
||||||
|
{
|
||||||
|
GLenum err = glGetError();
|
||||||
|
if ( err == GL_NO_ERROR )
|
||||||
|
return;
|
||||||
|
|
||||||
|
// normally the error is reset by the call to glGetError() but if
|
||||||
|
// glGetError() itself returns an error, we risk looping forever here
|
||||||
|
// so check that we get a different error than the last time
|
||||||
|
if ( err == errLast )
|
||||||
|
{
|
||||||
|
wxLogError(wxT("OpenGL error state couldn't be reset."));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
errLast = err;
|
||||||
|
|
||||||
|
wxLogError( wxT( "OpenGL error %d At: %s, line: %d" ), err,
|
||||||
|
GetChars( FROM_UTF8( aFileName ) ), aLineNumber );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
INFO3D_VISU& EDA_3D_CANVAS::GetPrm3DVisu() const
|
INFO3D_VISU& EDA_3D_CANVAS::GetPrm3DVisu() const
|
||||||
{
|
{
|
||||||
|
|
|
@ -33,3 +33,4 @@ set(3D-VIEWER_SRCS
|
||||||
)
|
)
|
||||||
|
|
||||||
add_library(3d-viewer STATIC ${3D-VIEWER_SRCS})
|
add_library(3d-viewer STATIC ${3D-VIEWER_SRCS})
|
||||||
|
add_dependencies( 3d-viewer pcbcommon )
|
||||||
|
|
|
@ -312,7 +312,7 @@ set( KICAD_BIN bin
|
||||||
set( KICAD_FP_LIB_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}"
|
set( KICAD_FP_LIB_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}"
|
||||||
CACHE PATH "Default path where footprint libraries are installed." )
|
CACHE PATH "Default path where footprint libraries are installed." )
|
||||||
|
|
||||||
if( UNIX )
|
if( UNIX AND NOT APPLE )
|
||||||
# Everything without leading / is relative to CMAKE_INSTALL_PREFIX.
|
# Everything without leading / is relative to CMAKE_INSTALL_PREFIX.
|
||||||
set( KICAD_PLUGINS lib/kicad/plugins
|
set( KICAD_PLUGINS lib/kicad/plugins
|
||||||
CACHE PATH "Location of KiCad plugins." )
|
CACHE PATH "Location of KiCad plugins." )
|
||||||
|
@ -339,6 +339,46 @@ set( KICAD_DEMOS ${KICAD_DATA}/demos
|
||||||
set( KICAD_TEMPLATE ${KICAD_DATA}/template
|
set( KICAD_TEMPLATE ${KICAD_DATA}/template
|
||||||
CACHE PATH "Location of KiCad template files." )
|
CACHE PATH "Location of KiCad template files." )
|
||||||
|
|
||||||
|
if( APPLE )
|
||||||
|
# everything without leading / is relative to CMAKE_INSTALL_PREFIX.
|
||||||
|
# CMAKE_INSTALL_PREFIX is root of .dmg image
|
||||||
|
set( KICAD_BIN ${CMAKE_INSTALL_PREFIX}
|
||||||
|
CACHE PATH "Location of KiCad binaries." FORCE )
|
||||||
|
|
||||||
|
# some paths to single app bundle
|
||||||
|
set( OSX_BUNDLE_MAIN "kicad.app" )
|
||||||
|
set( OSX_BUNDLE_BIN_DIR "Contents/MacOS" )
|
||||||
|
set( OSX_BUNDLE_LIB_DIR "Contents/Frameworks" )
|
||||||
|
set( OSX_BUNDLE_KIFACE_DIR "Contents/Plugins" )
|
||||||
|
set( OSX_BUNDLE_SUP_DIR "Contents/SharedSupport" )
|
||||||
|
set( OSX_BUNDLE_BUILD_DIR "${CMAKE_BINARY_DIR}/kicad/${OSX_BUNDLE_MAIN}" )
|
||||||
|
set( OSX_BUNDLE_BUILD_BIN_DIR "${OSX_BUNDLE_BUILD_DIR}/${OSX_BUNDLE_BIN_DIR}" )
|
||||||
|
set( OSX_BUNDLE_BUILD_LIB_DIR "${OSX_BUNDLE_BUILD_DIR}/${OSX_BUNDLE_LIB_DIR}" )
|
||||||
|
set( OSX_BUNDLE_BUILD_KIFACE_DIR "${OSX_BUNDLE_BUILD_DIR}/${OSX_BUNDLE_KIFACE_DIR}" )
|
||||||
|
set( OSX_BUNDLE_INSTALL_DIR "${KICAD_BIN}/${OSX_BUNDLE_MAIN}" )
|
||||||
|
set( OSX_BUNDLE_INSTALL_BIN_DIR "${OSX_BUNDLE_INSTALL_DIR}/${OSX_BUNDLE_BIN_DIR}" )
|
||||||
|
set( OSX_BUNDLE_INSTALL_LIB_DIR "${OSX_BUNDLE_INSTALL_DIR}/${OSX_BUNDLE_LIB_DIR}" )
|
||||||
|
set( OSX_BUNDLE_INSTALL_KIFACE_DIR "${OSX_BUNDLE_INSTALL_DIR}/${OSX_BUNDLE_KIFACE_DIR}" )
|
||||||
|
|
||||||
|
# everything provided with the application bundle goes into
|
||||||
|
# kicad.app/Contents/SharedSupport => accessible via GetDataDir()
|
||||||
|
# everything else to the .dmg image
|
||||||
|
set( KICAD_DATA ${OSX_BUNDLE_INSTALL_DIR}/${OSX_BUNDLE_SUP_DIR}
|
||||||
|
CACHE PATH "Location of KiCad data files." FORCE )
|
||||||
|
set( KICAD_TEMPLATE ${KICAD_DATA}/template
|
||||||
|
CACHE PATH "Location of KiCad template files." FORCE )
|
||||||
|
set( KICAD_PLUGINS ${KICAD_DATA}/plugins
|
||||||
|
CACHE PATH "Location of KiCad plugins." FORCE )
|
||||||
|
set( KICAD_DOCS doc
|
||||||
|
CACHE PATH "Location of KiCad documentation files." FORCE )
|
||||||
|
set( KICAD_DEMOS demos
|
||||||
|
CACHE PATH "Location of KiCad demo files." FORCE )
|
||||||
|
|
||||||
|
# used to set DEFAULT_FP_LIB_PATH in config.h.cmake, but then never used
|
||||||
|
# set it to correct value just in case (see common.cpp)
|
||||||
|
set( KICAD_FP_LIB_INSTALL_PATH "~/Library/Preferences/kicad" )
|
||||||
|
endif()
|
||||||
|
|
||||||
mark_as_advanced( KICAD_BIN
|
mark_as_advanced( KICAD_BIN
|
||||||
KICAD_PLUGINS
|
KICAD_PLUGINS
|
||||||
KICAD_DATA
|
KICAD_DATA
|
||||||
|
@ -368,13 +408,7 @@ add_definitions( -DWX_COMPATIBILITY )
|
||||||
# See line 41 of CMakeModules/FindwxWidgets.cmake
|
# See line 41 of CMakeModules/FindwxWidgets.cmake
|
||||||
set( wxWidgets_CONFIG_OPTIONS --static=no )
|
set( wxWidgets_CONFIG_OPTIONS --static=no )
|
||||||
|
|
||||||
# On Apple only wxwidgets 2.9 or higher doesn't need to find aui part of base
|
find_package( wxWidgets 3.0.0 COMPONENTS gl aui adv html core net base xml REQUIRED )
|
||||||
# Seems no longer needed on wx-3
|
|
||||||
if( APPLE AND ( KICAD_SCRIPTING OR KICAD_SCRIPTING_MODULES OR KICAD_SCRIPTING_WXPYTHON) )
|
|
||||||
find_package( wxWidgets 3.0.0 COMPONENTS gl adv html core net base xml REQUIRED )
|
|
||||||
else()
|
|
||||||
find_package( wxWidgets 3.0.0 COMPONENTS gl aui adv html core net base xml REQUIRED )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Include wxWidgets macros.
|
# Include wxWidgets macros.
|
||||||
include( ${wxWidgets_USE_FILE} )
|
include( ${wxWidgets_USE_FILE} )
|
||||||
|
@ -397,10 +431,10 @@ add_custom_target( lib-dependencies )
|
||||||
|
|
||||||
# Only download and build all dependencies from source on OSX if the user specifically requests
|
# Only download and build all dependencies from source on OSX if the user specifically requests
|
||||||
# it. Otherwise, respect the developers wishes to use the dependencies already installed on
|
# it. Otherwise, respect the developers wishes to use the dependencies already installed on
|
||||||
# their systme.
|
# their system
|
||||||
if( APPLE AND USE_OSX_DEPS_BUILDER )
|
if( APPLE AND USE_OSX_DEPS_BUILDER )
|
||||||
|
|
||||||
# This should be built in all cases, if swig exec is not avaiable
|
# This should be built in all cases, if swig exec is not available
|
||||||
# will be impossible also enable SCRIPTING being for PCBNEW required immediately
|
# will be impossible also enable SCRIPTING being for PCBNEW required immediately
|
||||||
|
|
||||||
include( download_pcre )
|
include( download_pcre )
|
||||||
|
@ -570,11 +604,22 @@ if( KICAD_SCRIPTING OR KICAD_SCRIPTING_MODULES )
|
||||||
)
|
)
|
||||||
|
|
||||||
if( NOT PYTHON_SITE_PACKAGE_PATH )
|
if( NOT PYTHON_SITE_PACKAGE_PATH )
|
||||||
message( FATAL_ERROR "Error occurred while attemping to find the Python site library path." )
|
message( FATAL_ERROR "Error occurred while attempting to find the Python site library path." )
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set( PYTHON_DEST "${PYTHON_SITE_PACKAGE_PATH}" CACHE PATH "Python module install path." )
|
if( NOT APPLE )
|
||||||
|
set( PYTHON_DEST "${PYTHON_SITE_PACKAGE_PATH}"
|
||||||
|
CACHE PATH "Python module install path."
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
# relative path for python in bundle
|
||||||
|
set( PYTHON_LIB_DIR "python" )
|
||||||
|
# install into bundle Frameworks folder
|
||||||
|
set( PYTHON_DEST "${OSX_BUNDLE_BUILD_LIB_DIR}/${PYTHON_LIB_DIR}"
|
||||||
|
CACHE PATH "Python module install path."
|
||||||
|
)
|
||||||
|
endif()
|
||||||
mark_as_advanced( PYTHON_DEST )
|
mark_as_advanced( PYTHON_DEST )
|
||||||
message( STATUS "Python module install path: ${PYTHON_DEST}" )
|
message( STATUS "Python module install path: ${PYTHON_DEST}" )
|
||||||
|
|
||||||
|
@ -650,7 +695,7 @@ add_dependencies( pl_editor boost )
|
||||||
add_dependencies( pnsrouter boost )
|
add_dependencies( pnsrouter boost )
|
||||||
|
|
||||||
|
|
||||||
if ( KICAD_BUILD_STATIC OR KICAD_BUILD_DYNAMIC )
|
if( KICAD_BUILD_STATIC OR KICAD_BUILD_DYNAMIC )
|
||||||
add_dependencies( pcbnew lib-dependencies )
|
add_dependencies( pcbnew lib-dependencies )
|
||||||
add_dependencies( eeschema lib-dependencies )
|
add_dependencies( eeschema lib-dependencies )
|
||||||
add_dependencies( cvpcb lib-dependencies )
|
add_dependencies( cvpcb lib-dependencies )
|
||||||
|
@ -663,7 +708,7 @@ if ( KICAD_BUILD_STATIC OR KICAD_BUILD_DYNAMIC )
|
||||||
add_dependencies( pnsrouter lib-dependencies )
|
add_dependencies( pnsrouter lib-dependencies )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if ( KICAD_BUILD_DYNAMIC )
|
if( KICAD_BUILD_DYNAMIC )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#############
|
#############
|
||||||
|
@ -733,7 +778,7 @@ endif()
|
||||||
###
|
###
|
||||||
# FreeDesktop .desktop and MIME resources
|
# FreeDesktop .desktop and MIME resources
|
||||||
###
|
###
|
||||||
if( UNIX )
|
if( UNIX AND NOT APPLE )
|
||||||
|
|
||||||
# Set paths
|
# Set paths
|
||||||
set( UNIX_MIME_DIR resources/linux/mime )
|
set( UNIX_MIME_DIR resources/linux/mime )
|
||||||
|
|
|
@ -857,7 +857,7 @@ endif(wxWidgets_FIND_STYLE STREQUAL "win32")
|
||||||
|
|
||||||
# Check if a specfic version was requested by find_package().
|
# Check if a specfic version was requested by find_package().
|
||||||
if(wxWidgets_FOUND AND wxWidgets_FIND_VERSION)
|
if(wxWidgets_FOUND AND wxWidgets_FIND_VERSION)
|
||||||
find_file(_filename wx/version.h PATHS ${wxWidgets_INCLUDE_DIRS})
|
find_file(_filename wx/version.h PATHS ${wxWidgets_INCLUDE_DIRS} NO_DEFAULT_PATH)
|
||||||
dbg_msg("_filename: ${_filename}")
|
dbg_msg("_filename: ${_filename}")
|
||||||
|
|
||||||
if(NOT _filename)
|
if(NOT _filename)
|
||||||
|
|
|
@ -1,63 +1,198 @@
|
||||||
Compiling KiCad on Apple Mac OS X
|
Compiling KiCad on Apple Mac OS X
|
||||||
=================================
|
=================================
|
||||||
First written: 2010-01-31
|
|
||||||
by: Jerry Jacobs <xor.gate.engineering[at]gmail[dot]com>
|
|
||||||
|
|
||||||
Modified at: 2014-02-07
|
Building on OSX is very similar to building on Linux. This document will provide
|
||||||
by: Marco Serantoni <marco.serantoni[at]gmail[dot]com>
|
a complete walk-through on what to do but it will focus on OSX specific things.
|
||||||
|
See general documentation on non-OSX specific KiCad build switches, etc.
|
||||||
|
|
||||||
Snow Leopard
|
|
||||||
------------
|
|
||||||
|
|
||||||
Requirements
|
Prerequisites
|
||||||
* XCode Tools (http://developer.apple.com/tools/xcode)
|
-------------
|
||||||
* bzr (bazaar)
|
|
||||||
* CMake (http://www.cmake.org)
|
|
||||||
|
|
||||||
The build of Kicad for OSX is now easier than before.
|
Tools needed for building KiCad:
|
||||||
The building system will download and compile the needed libraries for you
|
* XCode Tools
|
||||||
patching them accordly to the needs.
|
* bzr - Bazaar version control system
|
||||||
|
* CMake - Cross-platform make
|
||||||
|
|
||||||
Building Kicad with no support for Scripting
|
Optional tools:
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
* Doxygen - Documentation system for several programming languages
|
||||||
|
|
||||||
The building needs to know if you want a static binary or a dynamic one
|
Mandatory library dependencies needed to compile KiCad:
|
||||||
Just set ONE of those two options KICAD_BUILD_STATIC or KICAD_BUILD_DYNAMIC
|
* GLEW - The OpenGL Extension Wrangler Library
|
||||||
|
* cairo - 2D graphics library
|
||||||
|
* wxWidgets - Cross-Platform GUI Library
|
||||||
|
OR
|
||||||
|
wxPython - A blending of the wxWidgets C++ class library with the Python
|
||||||
|
programming language
|
||||||
|
|
||||||
If you set KICAD_BUILD_DYNAMIC the building system will build all and include
|
Optional library dependencies, depends on used KiCad features
|
||||||
the needed libraries for each executable in its bundle
|
* OpenSSL - The Open Source toolkit for SSL/TLS
|
||||||
|
=> Needed for github plugin
|
||||||
|
|
||||||
cmake -DKICAD_BUILD_DYNAMIC=ON .
|
All tools (except XCode, of course) and all dependencies except wxWidgets/wxPython
|
||||||
make
|
can be compiled manually, but it is advised to install them using your favorite
|
||||||
|
package manager for OSX like MacPorts or Homebrew.
|
||||||
|
Depending on the package manager the development packages of the library
|
||||||
|
dependencies may have to be installed (usually something like <pkg>-dev or
|
||||||
|
<pkg>-devel).
|
||||||
|
Further, depending on the configuration of your package manager packages might
|
||||||
|
have to be compiled with special flags/variants to support the correct
|
||||||
|
architecture. E.g., some packages of MacPorts need to have the "+universal"
|
||||||
|
variant set to also include the x86_64 variant that might be chosen
|
||||||
|
automatically by KiCad build process.
|
||||||
|
|
||||||
Building Kicad with support for Scripting
|
IMPORTANT:
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
At the moment you *must not* use a wxWidgets/wxPython version installed by any
|
||||||
Due some problems with some dependencies the build of this kind of binary is a bit
|
package manager.
|
||||||
more complex, you should initially set KICAD_BUILD_DYNAMIC
|
KiCad on OSX needs overlay support and some other fixes, which are not yet
|
||||||
then issue for example
|
contained in mainline wxWidgets/wxPython sources and builds.
|
||||||
|
If you don't use a patched wxWidgets you will get graphical artifacts (something
|
||||||
|
like a magnifying glass effect in the upper left corner of KiCad windows) or
|
||||||
|
KiCad will just crash on start (due to duplicate libraries).
|
||||||
|
|
||||||
cmake -DKICAD_BUILD_DYNAMIC=ON .
|
Install now the tools and library dependencies as mentioned above.
|
||||||
make swig
|
|
||||||
|
|
||||||
After successfully building you can set your KICAD_SCRIPTING* options (for example):
|
|
||||||
|
|
||||||
cmake -DKICAD_SCRIPTING=ON -DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_SCRIPTING_MODULES=ON .
|
Folder Structure
|
||||||
make
|
----------------
|
||||||
|
|
||||||
The system will build all accordling your choices and package all in the bundle
|
This documentation will use the following folder structure as an example, but it
|
||||||
I know bundles will be huge, but those will be autosufficient.
|
is not mandatory to do it like that:
|
||||||
|
KiCad/
|
||||||
|
+-- kicad/ KiCad source folder
|
||||||
|
+-- build/ KiCad build folder
|
||||||
|
+-- bin/ KiCad binaries folder
|
||||||
|
+-- wx-src/ wxWidgets/wxPython source folder
|
||||||
|
+-- wx-build/ wxWidgets/wxPython build folder
|
||||||
|
+-- wx-bin/ wxWidgets/wxPython binaries folder
|
||||||
|
|
||||||
Building Kicad for other processors or Universal binaries
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
I wish remember you should set the processor like
|
Get KiCad sources
|
||||||
|
-----------------
|
||||||
|
|
||||||
cmake -DCMAKE_OSX_ARCHITECTURES="x86_64"
|
Create your work root "KiCad" wherever you like and sync KiCad sources to it:
|
||||||
|
# mkdir KiCad
|
||||||
|
# cd KiCad
|
||||||
|
# bzr branch lp:kicad
|
||||||
|
|
||||||
for other platforms
|
|
||||||
|
|
||||||
cmake -DCMAKE_OSX_ARCHITECTURES="x86_64 -arch i386"
|
Compiling wxWidgets / wxPython
|
||||||
cmake -DCMAKE_OSX_ARCHITECTURES="x86_64 -arch i386 -arch ppc"
|
------------------------------
|
||||||
|
|
||||||
|
If you don't intend to build KiCad with scripting support then you only need
|
||||||
|
wxWidgets, otherwise you need wxPython (which also contains wxWidgets).
|
||||||
|
|
||||||
|
Get wxWidgets sources from
|
||||||
|
http://www.wxwidgets.org/downloads/
|
||||||
|
or wxPython sources from
|
||||||
|
http://www.wxpython.org/download.php#source
|
||||||
|
and unpack it to the wx-src folder.
|
||||||
|
It is recommended to use the latest stable version. As of this writing this is
|
||||||
|
3.0.2 for wxWidgets or 3.0.1.1 for wxPython.
|
||||||
|
|
||||||
|
There is a little helper script osx_build_wx.sh in kicad/scripts that does all
|
||||||
|
the patching/configuring/compiling of wxWidgets or wxPython for you.
|
||||||
|
Go to your working root "KiCad" and run:
|
||||||
|
# kicad/scripts/osx_build_wx.sh wx-src wx-bin kicad "-j4"
|
||||||
|
|
||||||
|
First parameter is the source folder of wxWidgets/wxPython, second parameter the
|
||||||
|
target folder for compiled binaries, third parameter is the kicad folder, and
|
||||||
|
the last optional parameter are make options used during the build (in this
|
||||||
|
case for building with 4 jobs in parallel).
|
||||||
|
The script will automatically detect if you are compiling wxWidgets or wxPython.
|
||||||
|
CAUTION: The script will erase existing wx-build and target folders (wx-bin)
|
||||||
|
without any confirmation!
|
||||||
|
|
||||||
|
If everything went fine during compilation you will now have a working
|
||||||
|
wxWidgets/wxPython installation in the wx-bin folder.
|
||||||
|
For building KiCad it is sufficient to keep the wx-bin folder.
|
||||||
|
|
||||||
|
The script doesn't have to be used, the usual "configure/make/make install" will
|
||||||
|
also work. If you do so, be sure to apply the patches needed for KiCad:
|
||||||
|
# patch -p0 < ../kicad/patches/wxwidgets-3.0.0_macosx.patch
|
||||||
|
# patch -p0 < ../kicad/patches/wxwidgets-3.0.0_macosx_bug_15908.patch
|
||||||
|
# patch -p0 < ../kicad/patches/wxwidgets-3.0.0_macosx_soname.patch
|
||||||
|
The same patches apply both for wxWidgets and for wxPython.
|
||||||
|
|
||||||
|
The script uses the following configure command/options for wxWidgets known to
|
||||||
|
work:
|
||||||
|
# ../wx-src/configure \
|
||||||
|
--prefix=`pwd`/../wx-bin \
|
||||||
|
--with-opengl \
|
||||||
|
--enable-aui \
|
||||||
|
--enable-utf8 \
|
||||||
|
--enable-html \
|
||||||
|
--enable-stl \
|
||||||
|
--with-libjpeg=builtin \
|
||||||
|
--with-libpng=builtin \
|
||||||
|
--with-regex=builtin \
|
||||||
|
--with-libtiff=builtin \
|
||||||
|
--with-zlib=builtin \
|
||||||
|
--with-expat=builtin \
|
||||||
|
--without-liblzma \
|
||||||
|
--with-macosx-version-min=10.5 \
|
||||||
|
--enable-universal-binary=i386,x86_64 \
|
||||||
|
CPPFLAGS="-stdlib=libstdc++" \
|
||||||
|
LDFLAGS="-stdlib=libstdc++" \
|
||||||
|
CC=clang \
|
||||||
|
CXX=clang++
|
||||||
|
If you know what you are doing, you can of course use different settings.
|
||||||
|
|
||||||
|
|
||||||
|
Compiling KiCad
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Change to your working root "KiCad" and create the build folder there:
|
||||||
|
# mkdir build
|
||||||
|
# cd build
|
||||||
|
|
||||||
|
Now, configure KiCad without scripting support:
|
||||||
|
# cmake ../kicad \
|
||||||
|
-DCMAKE_C_COMPILER=clang \
|
||||||
|
-DCMAKE_CXX_COMPILER=clang++ \
|
||||||
|
-DwxWidgets_CONFIG_EXECUTABLE=../wx-bin/bin/wx-config \
|
||||||
|
-DKICAD_SCRIPTING=OFF \
|
||||||
|
-DKICAD_SCRIPTING_MODULES=OFF \
|
||||||
|
-DKICAD_SCRIPTING_WXPYTHON=OFF \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=../bin \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
|
||||||
|
or, configure KiCad with scripting support:
|
||||||
|
# cmake ../kicad \
|
||||||
|
-DCMAKE_C_COMPILER=clang \
|
||||||
|
-DCMAKE_CXX_COMPILER=clang++ \
|
||||||
|
-DwxWidgets_CONFIG_EXECUTABLE=../wx-bin/bin/wx-config \
|
||||||
|
-DPYTHON_EXECUTABLE=`which python` \
|
||||||
|
-DPYTHON_SITE_PACKAGE_PATH=`pwd`/../wx-bin/lib/python2.7/site-packages \
|
||||||
|
-DKICAD_SCRIPTING=ON \
|
||||||
|
-DKICAD_SCRIPTING_MODULES=ON \
|
||||||
|
-DKICAD_SCRIPTING_WXPYTHON=ON \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=../bin \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
Note, that depending on your python version the "python2.7" part of the
|
||||||
|
"-DPYTHON_SITE_PACKAGE_PATH" variable might have to be adjusted to what has
|
||||||
|
been generated when compiling/installing wxPython. If you want to use a specific
|
||||||
|
python, you can also specify it via "-DPYTHON_EXECUTABLE" instead of using
|
||||||
|
`which python` (this one will just detect/use you default python).
|
||||||
|
|
||||||
|
Now KiCad is configured using default features/build-switches.
|
||||||
|
See Documentation/compiling/build-config.txt for a list of all CMake options
|
||||||
|
available when compiling KiCad.
|
||||||
|
|
||||||
|
Build & Install:
|
||||||
|
# make
|
||||||
|
... will take some time ...
|
||||||
|
# make install
|
||||||
|
|
||||||
|
Again, if everything went fine you will now have KiCad binaries in the "bin"
|
||||||
|
folder. KiCad application can be directly run from there to test.
|
||||||
|
If everything is OK, you can create a .dmg image of your "bin" folder or just
|
||||||
|
copy/install the KiCad binaries and/or support files (like demos or
|
||||||
|
documentation) wherever you want.
|
||||||
|
|
||||||
|
If you resync to newer versions of KiCad you don't have to rebuild wxWidgets or
|
||||||
|
other dependencies.
|
||||||
|
CMake should pick up the changes automatically and build correctly. However, it
|
||||||
|
is advised that you make a clean build to be sure (just delete the build folder
|
||||||
|
and go again through the configure/build steps).
|
||||||
|
|
||||||
I know some you should prefer use ; as separator, this will be accomplished soon
|
|
||||||
keeping support for both the syntaxes
|
|
||||||
|
|
|
@ -615,6 +615,33 @@ Create additional DRC tests for improved error checking.
|
||||||
**Progress:**
|
**Progress:**
|
||||||
- Planning
|
- Planning
|
||||||
|
|
||||||
|
## Segment End Point Snapping. ## {#segment_snapping}
|
||||||
|
**Goal:**
|
||||||
|
|
||||||
|
It is not uncommon for board edge segment end points to inadvertently not
|
||||||
|
be closed causing issues for the 3D viewer and exporting to different file
|
||||||
|
formats due the board outline not being a fully enclosed polygon. This
|
||||||
|
feature would add segment end snapping support to allow the board outline
|
||||||
|
to be fully enclosed. This feature would only need to be supported by the
|
||||||
|
GAL rendering.
|
||||||
|
|
||||||
|
**Tasks**
|
||||||
|
- Mark board edge segment ends with a drag indicator to make it visible to the
|
||||||
|
user that the segment end does not have an endpoint with any other board edge
|
||||||
|
segment.
|
||||||
|
- Allow the user to smap the unconnected segment end to the nearest segment end
|
||||||
|
point.
|
||||||
|
- Automatically connect unconnected segments with and additional segment when
|
||||||
|
opening the 3D viewer or exporting the board to another format. Warn the
|
||||||
|
user that an addition segment has be added and should be verified.
|
||||||
|
|
||||||
|
**Dependencies:**
|
||||||
|
- None
|
||||||
|
|
||||||
|
**Progress:**
|
||||||
|
- Initial discussion.
|
||||||
|
|
||||||
|
|
||||||
## Gerber File Attributes ## {#gerber_attributes}
|
## Gerber File Attributes ## {#gerber_attributes}
|
||||||
**Goal:**
|
**Goal:**
|
||||||
|
|
||||||
|
|
28
Doxyfile
28
Doxyfile
|
@ -324,22 +324,6 @@ INLINE_SIMPLE_STRUCTS = NO
|
||||||
|
|
||||||
TYPEDEF_HIDES_STRUCT = NO
|
TYPEDEF_HIDES_STRUCT = NO
|
||||||
|
|
||||||
# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
|
|
||||||
# determine which symbols to keep in memory and which to flush to disk.
|
|
||||||
# When the cache is full, less often used symbols will be written to disk.
|
|
||||||
# For small to medium size projects (<1000 input files) the default value is
|
|
||||||
# probably good enough. For larger projects a too small cache size can cause
|
|
||||||
# doxygen to be busy swapping symbols to and from disk most of the time
|
|
||||||
# causing a significant performance penalty.
|
|
||||||
# If the system has enough physical memory increasing the cache will improve the
|
|
||||||
# performance by keeping more symbols in memory. Note that the value works on
|
|
||||||
# a logarithmic scale so increasing the size by one will roughly double the
|
|
||||||
# memory usage. The cache size is given by this formula:
|
|
||||||
# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
|
|
||||||
# corresponding to a cache size of 2^16 = 65536 symbols.
|
|
||||||
|
|
||||||
SYMBOL_CACHE_SIZE = 4
|
|
||||||
|
|
||||||
# Similar to the SYMBOL_CACHE_SIZE the size of the symbol lookup cache can be
|
# Similar to the SYMBOL_CACHE_SIZE the size of the symbol lookup cache can be
|
||||||
# set using LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given
|
# set using LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given
|
||||||
# their name and scope. Since this can be an expensive process and often the
|
# their name and scope. Since this can be an expensive process and often the
|
||||||
|
@ -1423,18 +1407,6 @@ GENERATE_XML = NO
|
||||||
|
|
||||||
XML_OUTPUT = xml
|
XML_OUTPUT = xml
|
||||||
|
|
||||||
# The XML_SCHEMA tag can be used to specify an XML schema,
|
|
||||||
# which can be used by a validating XML parser to check the
|
|
||||||
# syntax of the XML files.
|
|
||||||
|
|
||||||
XML_SCHEMA =
|
|
||||||
|
|
||||||
# The XML_DTD tag can be used to specify an XML DTD,
|
|
||||||
# which can be used by a validating XML parser to check the
|
|
||||||
# syntax of the XML files.
|
|
||||||
|
|
||||||
XML_DTD =
|
|
||||||
|
|
||||||
# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
|
# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
|
||||||
# dump the program listings (including syntax highlighting
|
# dump the program listings (including syntax highlighting
|
||||||
# and cross-referencing information) to the XML output. Note that
|
# and cross-referencing information) to the XML output. Note that
|
||||||
|
|
|
@ -20,7 +20,7 @@ set_source_files_properties( bitmap2cmp_gui.cpp PROPERTIES
|
||||||
COMPILE_DEFINITIONS "COMPILING_DLL"
|
COMPILE_DEFINITIONS "COMPILING_DLL"
|
||||||
)
|
)
|
||||||
|
|
||||||
add_executable( bitmap2component WIN32 MACOSX_BUNDLE
|
add_executable( bitmap2component WIN32
|
||||||
${BITMAP2COMPONENT_SRCS}
|
${BITMAP2COMPONENT_SRCS}
|
||||||
${BITMAP2COMPONENT_RESOURCES}
|
${BITMAP2COMPONENT_RESOURCES}
|
||||||
)
|
)
|
||||||
|
@ -33,10 +33,17 @@ target_link_libraries( bitmap2component
|
||||||
potrace
|
potrace
|
||||||
)
|
)
|
||||||
|
|
||||||
install( TARGETS bitmap2component
|
if( APPLE )
|
||||||
DESTINATION ${KICAD_BIN}
|
# puts binaries into the *.app bundle while linking
|
||||||
COMPONENT binary
|
set_target_properties( bitmap2component PROPERTIES
|
||||||
)
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS bitmap2component
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( false ) # linker map with cross reference
|
if( false ) # linker map with cross reference
|
||||||
|
@ -52,17 +59,3 @@ if( MINGW )
|
||||||
else()
|
else()
|
||||||
set( BITMAP2COMPONENT_RESOURCES bitmap2component.rc )
|
set( BITMAP2COMPONENT_RESOURCES bitmap2component.rc )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set( BITMAP2COMPONENT_RESOURCES bitmap2component.icns )
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/bitmap2component.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set( MACOSX_BUNDLE_ICON_FILE bitmap2component.icns )
|
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-eda.bitmap2component )
|
|
||||||
|
|
||||||
set_target_properties( bitmap2component PROPERTIES
|
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
|
@ -12,8 +12,8 @@
|
||||||
width="26"
|
width="26"
|
||||||
version="1.1"
|
version="1.1"
|
||||||
id="svg2985"
|
id="svg2985"
|
||||||
inkscape:version="0.48.3.1 r9886"
|
inkscape:version="0.48.4 r9939"
|
||||||
sodipodi:docname="2-icon_cvpcb.svg">
|
sodipodi:docname="cvpcb.svg">
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata3057">
|
id="metadata3057">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
@ -35,15 +35,15 @@
|
||||||
guidetolerance="10"
|
guidetolerance="10"
|
||||||
inkscape:pageopacity="0"
|
inkscape:pageopacity="0"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:window-width="1600"
|
inkscape:window-width="1920"
|
||||||
inkscape:window-height="849"
|
inkscape:window-height="1033"
|
||||||
id="namedview3055"
|
id="namedview3055"
|
||||||
showgrid="true"
|
showgrid="true"
|
||||||
inkscape:zoom="18.178537"
|
inkscape:zoom="31.120863"
|
||||||
inkscape:cx="5.5742284"
|
inkscape:cx="13.368694"
|
||||||
inkscape:cy="8.1742878"
|
inkscape:cy="12.38952"
|
||||||
inkscape:window-x="0"
|
inkscape:window-x="-4"
|
||||||
inkscape:window-y="29"
|
inkscape:window-y="-4"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
inkscape:current-layer="svg2985"
|
inkscape:current-layer="svg2985"
|
||||||
inkscape:snap-to-guides="false"
|
inkscape:snap-to-guides="false"
|
||||||
|
@ -327,95 +327,6 @@
|
||||||
cy="7.2679"
|
cy="7.2679"
|
||||||
r="38.159" />
|
r="38.159" />
|
||||||
</defs>
|
</defs>
|
||||||
<g
|
|
||||||
id="g3257"
|
|
||||||
transform="matrix(0.5853476,0,0,0.53794398,-79.024171,23.848224)">
|
|
||||||
<rect
|
|
||||||
y="6.5"
|
|
||||||
x="1"
|
|
||||||
height="13.000002"
|
|
||||||
width="24.000004"
|
|
||||||
id="rect3926"
|
|
||||||
style="fill:none;stroke:#333333;stroke-width:2;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cccc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3928"
|
|
||||||
d="m 1,11 3.5,0 0,4 -3.5,0"
|
|
||||||
style="fill:none;stroke:#333333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="0"
|
|
||||||
x="2"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3820"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3822"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="20"
|
|
||||||
y="0"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="0"
|
|
||||||
x="14"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3824"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3826"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="8"
|
|
||||||
y="0"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3828"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="2"
|
|
||||||
y="22"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="22"
|
|
||||||
x="20"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3830"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3832"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="14"
|
|
||||||
y="22"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="22"
|
|
||||||
x="8"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3834"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
</g>
|
|
||||||
<rect
|
<rect
|
||||||
style="color:#000000;stroke:#000000;stroke-width:0.7119"
|
style="color:#000000;stroke:#000000;stroke-width:0.7119"
|
||||||
height="0.72042"
|
height="0.72042"
|
||||||
|
@ -430,52 +341,6 @@
|
||||||
transform="matrix(-0.84925,-0.56427,0.49404,-0.84925,120.46108,338.80818)"
|
transform="matrix(-0.84925,-0.56427,0.49404,-0.84925,120.46108,338.80818)"
|
||||||
id="g29" />
|
id="g29" />
|
||||||
</g>
|
</g>
|
||||||
<g
|
|
||||||
id="g4286"
|
|
||||||
transform="matrix(0.83930489,0,0,-0.86642568,-100.01845,25.177313)">
|
|
||||||
<path
|
|
||||||
style="fill:#fafafa;fill-opacity:1;stroke:#000000;stroke-width:1.0914079;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
d="M 31,19.972938 31,4.9999998 43.834866,12.486469 z"
|
|
||||||
id="path3921"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cccc" />
|
|
||||||
<path
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#000000;stroke-width:0.87312639;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
d="m 32.944676,14.528233 3.500418,0"
|
|
||||||
id="path3923"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3925"
|
|
||||||
d="m 32.944676,10.784999 3.500418,0"
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#000000;stroke-width:0.87312639;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#000000;stroke-width:1.0914079;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
d="m 43.834866,12.486469 2.722546,0"
|
|
||||||
id="path3927"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<path
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#000000;stroke-width:1.0914079;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
d="m 31,15.208821 -3.111483,0"
|
|
||||||
id="path3929"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<path
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#000000;stroke-width:1.0914079;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
d="m 31,9.7641166 -3.111483,0"
|
|
||||||
id="path3931"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<path
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#000000;stroke-width:0.87312639;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
d="m 34.694885,12.316322 0,-3.0626465"
|
|
||||||
id="path3933"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
</g>
|
|
||||||
<g
|
<g
|
||||||
id="g4556"
|
id="g4556"
|
||||||
transform="translate(22.055977,-2.8607621)">
|
transform="translate(22.055977,-2.8607621)">
|
||||||
|
@ -564,161 +429,6 @@
|
||||||
inkscape:connector-curvature="0"
|
inkscape:connector-curvature="0"
|
||||||
sodipodi:nodetypes="cc" />
|
sodipodi:nodetypes="cc" />
|
||||||
</g>
|
</g>
|
||||||
<rect
|
|
||||||
style="opacity:0.8048782;fill:none;stroke:#f4972b;stroke-width:0.9672913;stroke-opacity:0.98431373"
|
|
||||||
id="rect2962"
|
|
||||||
width="25.049658"
|
|
||||||
height="25.019873"
|
|
||||||
x="-120.30598"
|
|
||||||
y="1.3000178"
|
|
||||||
ry="2.245373" />
|
|
||||||
<rect
|
|
||||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3018"
|
|
||||||
width="22.004204"
|
|
||||||
height="22.076113"
|
|
||||||
x="-118.78465"
|
|
||||||
y="2.7732882"
|
|
||||||
ry="1.0426829" />
|
|
||||||
<g
|
|
||||||
id="g3175"
|
|
||||||
transform="matrix(0.90161012,0,0,0.90161012,-89.204276,-20.160903)">
|
|
||||||
<g
|
|
||||||
id="g3191-2"
|
|
||||||
transform="matrix(0.85303943,0,0,0.85303943,-24.298581,21.410598)">
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cccc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3921-4"
|
|
||||||
d="m -6.7662586,5.5550885 0,16.0416675 12.0312503,-8.020834 z"
|
|
||||||
style="fill:#fafafa;fill-opacity:1;stroke:#800000;stroke-width:1.09375;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3923-8"
|
|
||||||
d="m -4.9433423,11.388422 3.28125,0"
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#800000;stroke-width:0.87500006;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#800000;stroke-width:0.87500006;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
d="m -4.9433423,15.398839 3.28125,0"
|
|
||||||
id="path3925-58"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3927-5"
|
|
||||||
d="m 5.2649917,13.575922 2.552083,0"
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#800000;stroke-width:1.09375;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3929-0"
|
|
||||||
d="m -6.7662586,10.659256 -2.9166667,0"
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#800000;stroke-width:1.09375;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3931-0"
|
|
||||||
d="m -6.7662586,16.492589 -2.9166667,0"
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#800000;stroke-width:1.09375;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3933-3"
|
|
||||||
d="m -3.3027173,13.758214 0,3.28125"
|
|
||||||
style="fill:#f0f0f0;fill-opacity:1;stroke:#800000;stroke-width:0.87500006;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
<g
|
|
||||||
id="g3257-4"
|
|
||||||
transform="matrix(0.49663588,0,0,0.49663588,-109.56472,12.137037)">
|
|
||||||
<rect
|
|
||||||
y="6.5"
|
|
||||||
x="1"
|
|
||||||
height="13.000002"
|
|
||||||
width="24.000004"
|
|
||||||
id="rect3926-85"
|
|
||||||
style="fill:none;stroke:#333333;stroke-width:2;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cccc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path3928-9"
|
|
||||||
d="m 1,11 3.5,0 0,4 -3.5,0"
|
|
||||||
style="fill:none;stroke:#333333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="0"
|
|
||||||
x="2"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3820-5"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3822-6"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="20"
|
|
||||||
y="0"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="0"
|
|
||||||
x="14"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3824-4"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3826-5"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="8"
|
|
||||||
y="0"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3828-0"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="2"
|
|
||||||
y="22"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="22"
|
|
||||||
x="20"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3830-78"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
<rect
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none"
|
|
||||||
id="rect3832-8"
|
|
||||||
width="4"
|
|
||||||
height="4"
|
|
||||||
x="14"
|
|
||||||
y="22"
|
|
||||||
rx="0.5"
|
|
||||||
ry="0.5" />
|
|
||||||
<rect
|
|
||||||
ry="0.5"
|
|
||||||
rx="0.5"
|
|
||||||
y="22"
|
|
||||||
x="8"
|
|
||||||
height="4"
|
|
||||||
width="4"
|
|
||||||
id="rect3834-4"
|
|
||||||
style="fill:#d45500;fill-opacity:1;stroke:none" />
|
|
||||||
</g>
|
|
||||||
<g
|
<g
|
||||||
id="g4496"
|
id="g4496"
|
||||||
transform="translate(27.864274,2.0172665)">
|
transform="translate(27.864274,2.0172665)">
|
||||||
|
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 18 KiB |
|
@ -14,7 +14,7 @@
|
||||||
inkscape:export-xdpi="90.000000"
|
inkscape:export-xdpi="90.000000"
|
||||||
inkscape:export-filename="/home/steven/edit-find-48.png"
|
inkscape:export-filename="/home/steven/edit-find-48.png"
|
||||||
sodipodi:docname="find_replace.svg"
|
sodipodi:docname="find_replace.svg"
|
||||||
inkscape:version="0.48.2 r9819"
|
inkscape:version="0.48.4 r9939"
|
||||||
sodipodi:version="0.32"
|
sodipodi:version="0.32"
|
||||||
id="svg249"
|
id="svg249"
|
||||||
height="26"
|
height="26"
|
||||||
|
@ -433,17 +433,17 @@
|
||||||
</linearGradient>
|
</linearGradient>
|
||||||
</defs>
|
</defs>
|
||||||
<sodipodi:namedview
|
<sodipodi:namedview
|
||||||
inkscape:window-y="26"
|
inkscape:window-y="-4"
|
||||||
inkscape:window-x="0"
|
inkscape:window-x="-4"
|
||||||
inkscape:window-height="969"
|
inkscape:window-height="1033"
|
||||||
inkscape:window-width="1280"
|
inkscape:window-width="1920"
|
||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
inkscape:grid-bbox="true"
|
inkscape:grid-bbox="true"
|
||||||
showgrid="true"
|
showgrid="true"
|
||||||
inkscape:current-layer="layer5"
|
inkscape:current-layer="layer5"
|
||||||
inkscape:cy="13.454817"
|
inkscape:cy="12.529668"
|
||||||
inkscape:cx="70.249125"
|
inkscape:cx="12.810992"
|
||||||
inkscape:zoom="4"
|
inkscape:zoom="32.571824"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:pageopacity="0.0"
|
inkscape:pageopacity="0.0"
|
||||||
borderopacity="0.25490196"
|
borderopacity="0.25490196"
|
||||||
|
@ -470,7 +470,7 @@
|
||||||
<dc:format>image/svg+xml</dc:format>
|
<dc:format>image/svg+xml</dc:format>
|
||||||
<dc:type
|
<dc:type
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
<dc:title></dc:title>
|
<dc:title />
|
||||||
<dc:subject>
|
<dc:subject>
|
||||||
<rdf:Bag>
|
<rdf:Bag>
|
||||||
<rdf:li>edit</rdf:li>
|
<rdf:li>edit</rdf:li>
|
||||||
|
@ -704,82 +704,6 @@
|
||||||
inkscape:label="Magnifying Glass"
|
inkscape:label="Magnifying Glass"
|
||||||
style="display:inline"
|
style="display:inline"
|
||||||
transform="translate(0,-22)">
|
transform="translate(0,-22)">
|
||||||
<g
|
|
||||||
id="g3895"
|
|
||||||
transform="translate(-3.5870629,-0.56250016)">
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15686"
|
|
||||||
width="11.975437"
|
|
||||||
height="1"
|
|
||||||
x="33.024563"
|
|
||||||
y="27"
|
|
||||||
rx="0.082502544"
|
|
||||||
ry="0.065390877" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15732"
|
|
||||||
width="9"
|
|
||||||
height="1"
|
|
||||||
x="33"
|
|
||||||
y="35"
|
|
||||||
rx="0.062003829"
|
|
||||||
ry="0.065390877" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15744"
|
|
||||||
width="8"
|
|
||||||
height="1"
|
|
||||||
x="33"
|
|
||||||
y="41"
|
|
||||||
rx="0.055114511"
|
|
||||||
ry="0.065390877" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15686-1"
|
|
||||||
width="11.975437"
|
|
||||||
height="1"
|
|
||||||
x="33"
|
|
||||||
y="29"
|
|
||||||
rx="0.082502544"
|
|
||||||
ry="0.065390877" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15686-9"
|
|
||||||
width="11.975437"
|
|
||||||
height="1"
|
|
||||||
x="33.024563"
|
|
||||||
y="31"
|
|
||||||
rx="0.082502544"
|
|
||||||
ry="0.065390877" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15686-0"
|
|
||||||
width="11.975437"
|
|
||||||
height="1"
|
|
||||||
x="33"
|
|
||||||
y="33"
|
|
||||||
rx="0.082502544"
|
|
||||||
ry="0.065390877" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15686-5"
|
|
||||||
width="11.975437"
|
|
||||||
height="1"
|
|
||||||
x="33.024563"
|
|
||||||
y="37"
|
|
||||||
rx="0.082502544"
|
|
||||||
ry="0.065390877" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
|
|
||||||
id="rect15686-03"
|
|
||||||
width="11.975437"
|
|
||||||
height="1"
|
|
||||||
x="33.024563"
|
|
||||||
y="39"
|
|
||||||
rx="0.082502544"
|
|
||||||
ry="0.065390877" />
|
|
||||||
</g>
|
|
||||||
<path
|
<path
|
||||||
style="fill:none;stroke:#000000;stroke-width:0.5538497;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.01754384;display:inline"
|
style="fill:none;stroke:#000000;stroke-width:0.5538497;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.01754384;display:inline"
|
||||||
d="m 6.2485326,26.884809 0,20.221684"
|
d="m 6.2485326,26.884809 0,20.221684"
|
||||||
|
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 32 KiB |
|
@ -1,120 +1,492 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" height="48" width="48" version="1.0">
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<defs>
|
<svg
|
||||||
<linearGradient id="t" y2="7.0165" gradientUnits="userSpaceOnUse" x2="45.448" gradientTransform="scale(1.0059 .99417)" y1="92.54" x1="45.448">
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
<stop offset="0"/>
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
<stop stop-opacity=".58824" offset="1"/>
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
</linearGradient>
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
<filter id="v" color-interpolation-filters="sRGB">
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
<feGaussianBlur stdDeviation="1.71"/>
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
</filter>
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
<clipPath id="u">
|
height="48"
|
||||||
<rect rx="6" ry="6" height="84" width="84" y="6" x="6" fill="#fff"/>
|
width="48"
|
||||||
</clipPath>
|
version="1.0"
|
||||||
<linearGradient id="x" y2="138.66" gradientUnits="userSpaceOnUse" x2="48" y1="20.221" x1="48">
|
id="svg2"
|
||||||
<stop stop-color="#fff" offset="0"/>
|
inkscape:version="0.48.4 r9939"
|
||||||
<stop stop-color="#fff" stop-opacity="0" offset="1"/>
|
sodipodi:docname="orient.svg">
|
||||||
</linearGradient>
|
<metadata
|
||||||
<filter id="w" height="1.288" width="1.288" color-interpolation-filters="sRGB" y="-0.144" x="-0.144">
|
id="metadata181">
|
||||||
<feGaussianBlur stdDeviation="3.96"/>
|
<rdf:RDF>
|
||||||
</filter>
|
<cc:Work
|
||||||
<linearGradient id="p" y2="40" gradientUnits="userSpaceOnUse" x2="69" y1="40" x1="59">
|
rdf:about="">
|
||||||
<stop stop-color="#ff7c53" offset="0"/>
|
<dc:format>image/svg+xml</dc:format>
|
||||||
<stop stop-color="#f21919" offset=".5"/>
|
<dc:type
|
||||||
<stop stop-color="#db1414" offset=".5"/>
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
<stop stop-color="#9b1818" offset="1"/>
|
</cc:Work>
|
||||||
</linearGradient>
|
</rdf:RDF>
|
||||||
<linearGradient id="q" y2="88" gradientUnits="userSpaceOnUse" x2="69" y1="88" x1="59">
|
</metadata>
|
||||||
<stop stop-color="#f0f0f0" offset="0"/>
|
<sodipodi:namedview
|
||||||
<stop stop-color="#e6e6e6" offset=".5"/>
|
pagecolor="#ffffff"
|
||||||
<stop stop-color="#d2d2d2" offset=".5"/>
|
bordercolor="#666666"
|
||||||
<stop stop-color="#bebebe" offset="1"/>
|
borderopacity="1"
|
||||||
</linearGradient>
|
objecttolerance="10"
|
||||||
<radialGradient id="s" gradientUnits="userSpaceOnUse" cy="63.28" cx="63.335" gradientTransform="matrix(0.644,-1.4509e-6,1.4509e-6,0.644,22.699,22.756)" r="1.7404">
|
gridtolerance="10"
|
||||||
<stop stop-color="#c1c1c1" offset="0"/>
|
guidetolerance="10"
|
||||||
<stop stop-color="#3f3f3f" offset="1"/>
|
inkscape:pageopacity="0"
|
||||||
</radialGradient>
|
inkscape:pageshadow="2"
|
||||||
<linearGradient id="y" y2="-18.667" gradientUnits="userSpaceOnUse" x2="49.428" y1="83.553" x1="49.428">
|
inkscape:window-width="640"
|
||||||
<stop offset="0"/>
|
inkscape:window-height="480"
|
||||||
<stop stop-opacity="0" offset="1"/>
|
id="namedview179"
|
||||||
</linearGradient>
|
showgrid="false"
|
||||||
<radialGradient id="z" gradientUnits="userSpaceOnUse" cy="64" cx="64" gradientTransform="matrix(.72973 0 0 .72973 1.2973 1.2973)" r="37">
|
inkscape:zoom="4.9166667"
|
||||||
<stop stop-color="#fff" offset="0"/>
|
inkscape:cx="24"
|
||||||
<stop stop-color="#fff" stop-opacity=".62745" offset="1"/>
|
inkscape:cy="24"
|
||||||
</radialGradient>
|
inkscape:window-x="0"
|
||||||
<linearGradient id="n" y2="40" gradientUnits="userSpaceOnUse" x2="69" gradientTransform="matrix(.41573 .42054 -.3236 .32735 18.291 -24.237)" y1="40" x1="59">
|
inkscape:window-y="0"
|
||||||
<stop stop-color="#ff7c53" offset="0"/>
|
inkscape:window-maximized="0"
|
||||||
<stop stop-color="#f21919" offset=".5"/>
|
inkscape:current-layer="svg2" />
|
||||||
<stop stop-color="#db1414" offset=".5"/>
|
<defs
|
||||||
<stop stop-color="#9b1818" offset="1"/>
|
id="defs4">
|
||||||
</linearGradient>
|
<linearGradient
|
||||||
<linearGradient id="o" y2="88" gradientUnits="userSpaceOnUse" x2="69" gradientTransform="matrix(.41573 .42054 -.3236 .32735 18.291 -24.237)" y1="88" x1="59">
|
id="t"
|
||||||
<stop stop-color="#f0f0f0" offset="0"/>
|
y2="7.0165"
|
||||||
<stop stop-color="#e6e6e6" offset=".5"/>
|
gradientUnits="userSpaceOnUse"
|
||||||
<stop stop-color="#d2d2d2" offset=".5"/>
|
x2="45.448"
|
||||||
<stop stop-color="#bebebe" offset="1"/>
|
gradientTransform="scale(1.0059 .99417)"
|
||||||
</linearGradient>
|
y1="92.54"
|
||||||
<radialGradient id="r" gradientUnits="userSpaceOnUse" cy="63.28" cx="63.335" gradientTransform="matrix(.23949 .24226 -.23948 .24226 24.225 -7.3042)" r="1.7404">
|
x1="45.448">
|
||||||
<stop stop-color="#c1c1c1" offset="0"/>
|
<stop
|
||||||
<stop stop-color="#3f3f3f" offset="1"/>
|
offset="0"
|
||||||
</radialGradient>
|
id="stop7" />
|
||||||
</defs>
|
<stop
|
||||||
<g display="none" transform="translate(0,-48)">
|
stop-opacity=".58824"
|
||||||
<rect opacity=".9" rx="6" ry="6" height="85" filter="url(#v)" width="86" y="7" x="5" fill="url(#t)"/>
|
offset="1"
|
||||||
</g>
|
id="stop9" />
|
||||||
<g display="none" transform="translate(0,-48)">
|
</linearGradient>
|
||||||
<rect opacity=".15" clip-path="url(#u)" rx="12" ry="12" height="66" filter="url(#w)" width="66" stroke="#fff" stroke-linecap="round" y="15" x="15" stroke-width=".5" fill="url(#x)"/>
|
<filter
|
||||||
</g>
|
id="v"
|
||||||
<g display="none" transform="translate(0,-48)">
|
color-interpolation-filters="sRGB">
|
||||||
<path opacity=".2" d="m48 12.045-4.846 23.198c-0.5951 0.2287-1.1749 0.48065-1.7263 0.78741l-10.539-5.2696 5.2696 10.539c-0.31514 0.5624-0.58399 1.1484-0.8177 1.7565l-23.198 4.8456 23.198 4.8456c0.23062 0.6001 0.50774 1.1706 0.8177 1.7263l-5.2696 10.539 10.539-5.2696c0.55561 0.30997 1.1262 0.58708 1.7263 0.8177l4.846 23.2 4.846-23.198c0.6001-0.23062 1.1707-0.50773 1.7263-0.8177l10.539 5.2696-5.2696-10.539c0.30996-0.5556 0.58708-1.1262 0.8177-1.7263l23.199-4.847-23.199-4.845c-0.23371-0.60814-0.50255-1.1941-0.8177-1.7565l5.27-10.539-10.539 5.27c-0.552-0.307-1.131-0.559-1.726-0.788l-4.846-23.198zm0 27.045c4.8655-0.000002 8.813 3.9474 8.813 8.813 0 4.8655-3.9474 8.813-8.813 8.813-4.8655-0.000002-8.813-3.9474-8.813-8.813 0-4.8655 3.9474-8.813 8.813-8.813z" display="inline" fill="url(#y)"/>
|
<feGaussianBlur
|
||||||
<path opacity=".05" display="inline" d="m48 12.031-4.844 23.219c-0.5951 0.2287-1.1674 0.47449-1.7188 0.78125l-10.562-5.281 5.281 10.562c-0.31514 0.5624-0.57879 1.1419-0.8125 1.75l-23.188 4.8438 23.188 4.8438c0.23062 0.6001 0.50254 1.1631 0.8125 1.7188l-5.281 10.531 10.563-5.25c0.55561 0.30997 1.1187 0.58188 1.7188 0.8125l4.843 23.188 4.844-23.188c0.6-0.23 1.163-0.502 1.718-0.812l10.563 5.25-5.281-10.531c0.30996-0.5556 0.58188-1.1187 0.8125-1.7188l23.188-4.8438-23.188-4.8438c-0.23371-0.60814-0.49735-1.1876-0.8125-1.75l5.281-10.562-10.563 5.281c-0.551-0.307-1.123-0.552-1.718-0.781l-4.844-23.216zm0 2.0312 4.4375 21.281a0.4185 0.4185 0 0 0 0.25 0.28125c0.58524 0.22491 1.1294 0.48813 1.6562 0.78125a0.4185 0.4185 0 0 0 0.40625 0l9.4375-4.7188-4.7188 9.4375a0.4185 0.4185 0 0 0 0 0.40625c0.30388 0.54228 0.58466 1.0946 0.8125 1.6875a0.4185 0.4185 0 0 0 0.28125 0.25l21.25 4.4375-21.25 4.4375a0.4185 0.4185 0 0 0 -0.28125 0.25c-0.22255 0.5791-0.51041 1.1148-0.8125 1.6562a0.4185 0.4185 0 0 0 0 0.40625l4.718 9.407-9.438-4.687a0.4185 0.4185 0 0 0 -0.40625 0c-0.54148 0.30209-1.0771 0.58995-1.6562 0.8125a0.4185 0.4185 0 0 0 -0.25 0.28125l-4.4375 21.25-4.4375-21.25a0.4185 0.4185 0 0 0 -0.25 -0.28125c-0.58-0.223-1.115-0.511-1.657-0.813a0.4185 0.4185 0 0 0 -0.40625 0l-9.4375 4.6875 4.7188-9.4062a0.4185 0.4185 0 0 0 0 -0.40625c-0.30209-0.5415-0.58995-1.0772-0.8125-1.6562a0.4185 0.4185 0 0 0 -0.28125 -0.25l-21.25-4.4375 21.25-4.4375a0.4185 0.4185 0 0 0 0.28125 -0.25c0.22784-0.59286 0.50863-1.1452 0.8125-1.6875a0.4185 0.4185 0 0 0 0 -0.40625l-4.718-9.438 9.438 4.718a0.4185 0.4185 0 0 0 0.40625 0c0.52687-0.29312 1.071-0.55634 1.6562-0.78125a0.4185 0.4185 0 0 0 0.25 -0.28125l4.438-21.282zm0 24.625c-5.0918 0-9.2188 4.1269-9.2188 9.2188 0 5.0918 4.1269 9.2187 9.2188 9.2188 5.0918 0 9.2188-4.1269 9.2188-9.2188 0-5.0918-4.1269-9.2188-9.2188-9.2188zm0 0.40625c4.8655-0.000002 8.8125 3.947 8.8125 8.8125s-3.947 8.8125-8.8125 8.8125c-4.8655-0.000002-8.8125-3.947-8.8125-8.8125s3.947-8.8125 8.8125-8.8125z"/>
|
stdDeviation="1.71"
|
||||||
<path opacity=".1" display="inline" d="m48 12.031-4.844 23.219c-0.5951 0.2287-1.1674 0.47449-1.7188 0.78125l-10.562-5.281 5.281 10.562c-0.31514 0.5624-0.57879 1.1419-0.8125 1.75l-23.188 4.8438 23.188 4.8438c0.23062 0.6001 0.50254 1.1631 0.8125 1.7188l-5.281 10.531 10.563-5.25c0.55561 0.30997 1.1187 0.58188 1.7188 0.8125l4.843 23.188 4.844-23.188c0.6-0.23 1.163-0.502 1.718-0.812l10.563 5.25-5.281-10.531c0.30996-0.5556 0.58188-1.1187 0.8125-1.7188l23.188-4.8438-23.188-4.8438c-0.23371-0.60814-0.49735-1.1876-0.8125-1.75l5.281-10.562-10.563 5.281c-0.551-0.307-1.123-0.552-1.718-0.781l-4.844-23.216zm0 0.9375 4.6562 22.312a0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0.03125 0.0625 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0c0.59042 0.2269 1.1477 0.48096 1.6875 0.78125a0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0l10-5-5 10a0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125c0.3098 0.55286 0.58158 1.1179 0.8125 1.7188a0.19858 0.19858 0 0 0 0.03125 0.0625 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0l22.282 4.658-22.281 4.656a0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.0625 0.03125 0.19858 0.19858 0 0 0 -0.031 0.032 0.19858 0.19858 0 0 0 -0.03125 0.03125 0.19858 0.19858 0 0 0 0 0.03125c-0.22679 0.59013-0.50628 1.1386-0.8125 1.6875a0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125l5 9.9688-10-4.9688a0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0c-0.5489 0.30623-1.0974 0.58571-1.6875 0.8125a0.19858 0.19858 0 0 0 -0.0625 0.03125 0.19858 0.19858 0 0 0 -0.03125 0.03125 0.19858 0.19858 0 0 0 -0.03125 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125l-4.655 22.28-4.656-22.281a0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 -0.032 -0.062 0.19858 0.19858 0 0 0 -0.031 -0.032 0.19858 0.19858 0 0 0 -0.031 -0.031 0.19858 0.19858 0 0 0 -0.03125 0c-0.59013-0.22679-1.1386-0.50627-1.6875-0.8125a0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0l-10 4.9688 5-9.9688a0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125c-0.30622-0.54891-0.58571-1.0974-0.8125-1.6875a0.19858 0.19858 0 0 0 -0.032 -0.061 0.19858 0.19858 0 0 0 -0.031 -0.031 0.19858 0.19858 0 0 0 -0.031 -0.032 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0l-22.282-4.656 22.281-4.656a0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.0625 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125c0.23092-0.60089 0.50271-1.1659 0.8125-1.7188a0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125l-5-10 10 5a0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0c0.53975-0.30029 1.0971-0.55435 1.6875-0.78125a0.19858 0.19858 0 0 0 0.0625 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125l4.655-22.312zm0 25.938c-4.9729 0-9 4.0271-9 9s4.0271 9 9 9 9-4.0271 9-9-4.0271-9-9-9zm0 0.1875c4.8655-0.000002 8.8125 3.947 8.8125 8.8125s-3.947 8.8125-8.8125 8.8125c-4.8655-0.000002-8.8125-3.947-8.8125-8.8125s3.947-8.8125 8.8125-8.8125z"/>
|
id="feGaussianBlur12" />
|
||||||
<path display="inline" d="m153.02 10.767c-0.51471 0-1.0474 0.34494-1.6352 1.0345-0.27321 0.31875-0.46156 0.63714-0.65076 1.168-0.1892 0.53089-0.37766 1.2824-0.65075 2.4862-0.11127 0.52293-0.22801 1.0511-0.35041 1.5852-0.005 0.02589-0.0651 0.21593-0.10012 0.35041-0.43816-0.9082-0.65409-1.6171-1.7354-5.6566-0.005-0.0062-0.0105-0.01179-0.0167-0.01669-0.004-0.01205-0.009-0.02336-0.0167-0.03337-0.01-0.0076-0.0213-0.01322-0.0334-0.01669-0.006-0.000454-0.0111-0.000454-0.0166 0-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0166 0.01669-0.006 0.0049-0.0118 0.0105-0.0167 0.01669l-0.33372 0.31704c-0.23103-0.01896-0.39584-0.03337-0.58402-0.03337-0.6807 0-1.1184 0.12641-1.5351 0.45052-0.73237 0.57216-1.2348 1.3854-1.2348 2.0524 0 0.29473 0.062 0.61324 0.26698 1.0345 0.008 0.01357 0.0198 0.025 0.0334 0.03337 0.01 0.0076 0.0213 0.01321 0.0334 0.01669 0.006 0.000454 0.0111 0.000454 0.0167 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.006 0.000454 0.0111 0.000454 0.0167 0 0.006-0.0049 0.0118-0.0105 0.0167-0.01669l0.78425-0.51727c0.0136-0.0084 0.025-0.0198 0.0334-0.03337 0.006-0.0049 0.0118-0.0105 0.0167-0.01669 0.00046-0.0056 0.00046-0.01113 0-0.01669 0.002-0.01105 0.002-0.02232 0-0.03337 0.00046-0.0056 0.00046-0.01113 0-0.01669 0.00046-0.0056 0.00046-0.01113 0-0.01669-0.27695-0.58714-0.36709-0.82788-0.36709-1.0846 0-0.29559 0.16844-0.56638 0.45052-0.7175 0.24902-0.13489 0.48857-0.16686 0.98448-0.16686 0.1993 0 0.42923 0.0045 0.73419 0.01669-0.50777 2.1532-0.92214 3.5362-1.2681 4.1548-0.11155 0.19654-0.22511 0.31279-0.3671 0.38378-0.14198 0.07099-0.32928 0.10012-0.61738 0.10012-0.20625 0-0.37279-0.0167-0.68413-0.05006-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01669-0.012 0.0035-0.0233 0.0091-0.0334 0.01669l-0.53396 0.76756c-0.008 0.01001-0.0132 0.02132-0.0167 0.03337-0.00044 0.0056-0.00044 0.01113 0 0.01669-0.002 0.01105-0.002 0.02232 0 0.03337-0.00044 0.0056-0.00044 0.01113 0 0.01669 0.005 0.0062 0.0105 0.01179 0.0167 0.01669 0.008 0.01357 0.0198 0.025 0.0334 0.03337 0.005 0.0062 0.0105 0.01179 0.0167 0.01669 0.011 0.0019 0.0223 0.0019 0.0334 0 0.3009 0.02229 0.45661 0.03337 0.61739 0.03337 0.48681 0 0.80964-0.06055 1.118-0.25029 0.58361-0.34541 1.1562-1.1683 1.5184-2.1191 0.15976-0.42934 0.26739-0.84649 0.61739-2.2526l0.31703 1.3182c0.3238 1.3845 0.60125 2.2203 0.98448 2.9868 0.69073 1.4041 1.7045 2.1024 3.0536 2.1024 0.57933 0.000001 1.0052-0.10392 1.5184-0.40047 0.006 0.000455 0.0111 0.000455 0.0166 0 0.006-0.0049 0.0118-0.0105 0.0167-0.01669 0.01-0.01494 0.0156-0.0322 0.0167-0.05006 0.00045-0.0056 0.00045-0.01113 0-0.01669 0.002-0.01105 0.002-0.02232 0-0.03337l-0.26698-1.0012c-0.005-0.0062-0.0105-0.01179-0.0167-0.01669-0.004-0.01205-0.009-0.02336-0.0166-0.03337-0.01-0.0076-0.0213-0.01321-0.0334-0.01669-0.006-0.000454-0.0111-0.000454-0.0167 0-0.011-0.0019-0.0223-0.0019-0.0334 0-0.006-0.000454-0.0112-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01669-0.0136 0.0084-0.025 0.0198-0.0334 0.03337-0.006 0.0049-0.0118 0.0105-0.0166 0.01669-0.15516 0.36572-0.23163 0.51113-0.3671 0.66744-0.18374 0.22457-0.423 0.35041-0.66744 0.35041-0.64202 0-1.2642-0.49539-1.8188-1.5351 0.18467-0.9327 0.29241-1.3816 0.56733-2.5363 0.47849-1.9362 0.7327-2.7116 1.0846-3.4373 0.11224-0.22449 0.2262-0.37612 0.36709-0.46721s0.30666-0.13349 0.55064-0.13349c0.0829 0 0.13414-0.0047 0.28367 0.01669 0.006 0.000455 0.0111 0.000455 0.0166 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.0196-0.0058 0.0371-0.01748 0.05-0.03337 0.00045-0.0056 0.00045-0.01113 0-0.01669l0.40047-0.73419c0.006-0.0049 0.0118-0.0105 0.0167-0.01669 0.00045-0.0056 0.00045-0.01113 0-0.01669 0.002-0.01105 0.002-0.02232 0-0.03337 0.00045-0.0056 0.00045-0.01113 0-0.01669-0.005-0.0062-0.0105-0.01179-0.0167-0.01669-0.008-0.01357-0.0198-0.025-0.0334-0.03337-0.005-0.0062-0.0105-0.01179-0.0166-0.01669-0.006-0.000454-0.0111-0.000454-0.0167 0-0.12709-0.01059-0.24428-0.03337-0.35041-0.03337z"/>
|
</filter>
|
||||||
<path display="inline" d="m110.24 46.636c0 1.0573 0.50675 2.3685 1.2517 3.2397 0.88544 1.0119 2.291 1.5646 3.8656 1.5646 0.80347 0.000003 1.4439-0.17911 1.8776-0.55223 0.43367-0.37312 0.64427-0.93323 0.64427-1.6383 0-1.1539-0.5503-2.4086-1.4542-3.3502-0.88473-0.91001-2.1828-1.399-3.6815-1.399-0.79132 0.000002-1.4088 0.1874-1.8408 0.55223-0.4319 0.36483-0.66267 0.90154-0.66267 1.5831zm0.69949 0.69949c0-0.51725 0.20461-0.90214 0.57063-1.1781 0.36602-0.27594 0.90566-0.44178 1.6015-0.44178 0.91206 0.000004 1.9549 0.26397 2.6323 0.64427 0.90605 0.51264 1.4174 1.3075 1.4174 2.1721 0 0.53583-0.2062 0.94367-0.58904 1.2333-0.38284 0.28964-0.95465 0.46019-1.6935 0.46019-1.1145 0.000001-2.1105-0.32219-2.8164-0.84675-0.70585-0.52456-1.1229-1.2478-1.1229-2.0432z"/>
|
<clipPath
|
||||||
<path display="inline" d="m185.76 48.667-0.25679-0.82541v-0.03668c-0.0176-1.168-0.26703-1.934-0.82541-2.6413-0.50179-0.62724-1.0354-0.93547-1.7059-0.93547-0.32979 0-0.59183 0.04597-1.0272 0.22011-0.007 0.0054-0.013 0.01154-0.0184 0.01834-0.0149 0.0092-0.0275 0.02177-0.0367 0.03668-0.007 0.0054-0.013 0.01154-0.0184 0.01835-0.0005 0.0061-0.0005 0.01224 0 0.01834-0.002 0.01214-0.002 0.02454 0 0.03668-0.0005 0.0061-0.0005 0.01224 0 0.01835 0.006 0.0068 0.0115 0.01296 0.0184 0.01834l0.58696 0.89878c0.009 0.01492 0.0218 0.02748 0.0367 0.03668 0.006 0.0068 0.0115 0.01296 0.0184 0.01835 0.006 0.000499 0.0122 0.000499 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.38534-0.10838 0.69787-0.16508 0.99049-0.16508 0.45068 0 0.73004 0.14629 0.93547 0.49525 0.19099 0.32442 0.29612 0.86246 0.33017 1.5958l-2.5863-0.64199h-0.0184c-0.17301-0.16993-0.25483-0.2698-0.47691-0.45856-0.006-0.0005-0.0122-0.0005-0.0184 0-0.006-0.0068-0.0115-0.01296-0.0184-0.01834-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.0005-0.0122-0.0005-0.0184 0-0.007 0.0054-0.013 0.01154-0.0184 0.01834-0.0149 0.0092-0.0275 0.02176-0.0367 0.03668-0.007 0.0054-0.013 0.01154-0.0184 0.01835-0.002 0.01214-0.002 0.02454 0 0.03668v0.18343c-0.12235-0.02938-0.25254-0.05972-0.34851-0.09171-0.006-0.000499-0.0122-0.000499-0.0184 0-0.94131-0.23227-1.4542-0.39055-1.7425-0.58696-0.28836-0.19642-0.37422-0.42092-0.49525-0.91713-0.001-0.01963-0.008-0.0386-0.0184-0.05503l-0.40354-0.47691c-0.011-0.0083-0.0234-0.01453-0.0367-0.01834-0.006-0.0068-0.0115-0.01295-0.0184-0.01834-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0196 0.0012-0.0386 0.0075-0.055 0.01834-0.007 0.0054-0.0129 0.01154-0.0184 0.01834-0.0108 0.01642-0.0171 0.0354-0.0184 0.05503-0.0005 0.0061-0.0005 0.01224 0 0.01835-0.0122 0.34357-0.0184 0.60598-0.0184 0.69702l-0.0184 1.1006c0 0.36605-0.006 0.69267-0.0184 0.97215-0.049 1.4811-0.055 1.4904-0.055 2.0177 0 0.32333 0.0172 0.54083 0.11006 0.75204 0.0929 0.21121 0.24252 0.40129 0.49524 0.67867 0.2538 0.28475 0.45736 0.49294 0.64199 0.62364 0.18463 0.13071 0.36355 0.18343 0.53193 0.18343 0.0611 0 0.1746 0.0045 0.31183-0.03668 0.007-0.0054 0.013-0.01154 0.0184-0.01834 0.0149-0.0092 0.0275-0.02176 0.0367-0.03668 0.007-0.0054 0.0129-0.01154 0.0184-0.01834 0.002-0.01214 0.002-0.02454 0-0.03668 0.0005-0.0061 0.0005-0.01224 0-0.01834 0.0005-0.0061 0.0005-0.01224 0-0.01834l-0.34851-0.93547c-0.006-0.02161-0.0192-0.04078-0.0367-0.05503-0.011-0.0083-0.0234-0.01453-0.0367-0.01834-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.25859 0.03695-0.34248 0.05503-0.44022 0.05503-0.10971 0-0.19217-0.01492-0.23845-0.03668-0.0463-0.02176-0.0617-0.05315-0.0917-0.1284-0.0599-0.15048-0.0917-0.47832-0.0917-1.0639v-2.9165c0.86732 0.93525 1.0966 1.0793 2.568 1.4674 0.0297 0.48406 0.0512 0.65127 0.0734 0.91713 0.0122 0.26889 0.0184 0.42802 0.0184 0.49525-0.0005 0.0061-0.0005 0.01224 0 0.01834-0.00071-0.0033-0.001 0.05241 0 0.11006 0.001 0.05764 0.0119 0.14227 0.0184 0.22011-0.0005 0.0061-0.0005 0.01224 0 0.01834 0.006 0.0068 0.0115 0.01296 0.0184 0.01835-0.0005 0.0061-0.0005 0.01224 0 0.01834 0.1605 0.22222 0.19651 0.2579 0.36685 0.4769 0.006 0.0068 0.0115 0.01296 0.0184 0.01834 0.011 0.0083 0.0234 0.01453 0.0367 0.01834 0.006 0.0005 0.0122 0.0005 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.007-0.0054 0.013-0.01154 0.0184-0.01834 0.0149-0.0092 0.0275-0.02176 0.0367-0.03668 0.007-0.0054 0.013-0.01154 0.0184-0.01835 0.002-0.01214 0.002-0.02454 0-0.03668v-2.0544l2.5496 0.64199v0.29348c0.0244 0.51332 0.0367 0.91115 0.0367 0.97215 0 0.23161-0.012 0.32378-0.11007 0.42188-0.0981 0.0981-0.3133 0.20238-0.71535 0.36685-0.007 0.0054-0.0129 0.01154-0.0184 0.01834-0.0149 0.0092-0.0275 0.02177-0.0367 0.03668-0.007 0.0054-0.0129 0.01154-0.0184 0.01835-0.0005 0.0061-0.0005 0.01224 0 0.01834-0.002 0.01214-0.002 0.02454 0 0.03668-0.0005 0.0061-0.0005 0.01224 0 0.01835 0.004 0.01325 0.01 0.02568 0.0184 0.03668 0.006 0.000499 0.0122 0.000499 0.0184 0l0.82541 0.80707c0.006 0.0068 0.0115 0.01295 0.0184 0.01834 0.006 0.0068 0.0115 0.01296 0.0184 0.01835 0.0121 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.14624-0.01994 0.27031-0.05695 0.36685-0.1284 0.0965-0.07144 0.15984-0.17468 0.20177-0.29348 0.0005-0.0061 0.0005-0.01224 0-0.01835 0.0005-0.0061 0.0005-0.01224 0-0.01834l-0.055-2.4762 0.11006 0.03668c0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.0196-0.0012 0.0386-0.0075 0.055-0.01835 0.0174-0.01425 0.0303-0.03342 0.0367-0.05503 0.002-0.01214 0.002-0.02454 0-0.03668 0.002-0.01214 0.002-0.02454 0-0.03668z"/>
|
id="u">
|
||||||
<path display="inline" d="m146.59 85.233c0.60791 0 1.2438-0.33016 1.7259-0.79655 0.48208-0.46639 0.81315-1.071 0.81315-1.6595 0-0.26536-0.0665-0.49964-0.21574-0.73017-0.14925-0.23053-0.37107-0.46072-0.69698-0.71358-0.37336-0.29649-0.59841-0.51528-0.73017-0.71358-0.13177-0.1983-0.18255-0.37208-0.18255-0.614 0-0.79891 0.78269-1.5267 1.6927-1.5267 0.44798 0 0.90233 0.19128 1.1782 0.49784 0.22059 0.2416 0.31089 0.44864 0.39828 0.92931-0.00045 0.0057-0.00045 0.0111 0 0.01659 0.005 0.0064 0.0105 0.01175 0.0166 0.01659 0.008 0.01353 0.0197 0.02484 0.0332 0.03317 0.005 0.0064 0.0105 0.01175 0.0166 0.01659 0.006 0.000455 0.011 0.000455 0.0166 0 0.011 0.0021 0.0222 0.0021 0.0332 0 0.006 0.000455 0.0111 0.000455 0.0166 0 0.012-0.0036 0.0232-0.009 0.0332-0.01659l0.16595-0.11616c0.008-0.01 0.0132-0.02121 0.0166-0.03317 0.006-0.005 0.0117-0.01046 0.0166-0.01659l0.49784-1.1616c0.00046-0.0057 0.00046-0.01111 0-0.01659 0.002-0.01096 0.002-0.02221 0-0.03317 0.00046-0.0057 0.00046-0.01111 0-0.01659-0.005-0.0064-0.0105-0.01174-0.0166-0.01659 0.00045-0.0057 0.00045-0.01111 0-0.01659-0.4046-0.54332-0.96642-0.79655-1.7093-0.79655-0.87534 0-1.7421 0.35649-2.3896 0.89612-0.64755 0.53963-1.0787 1.2642-1.0787 2.008 0 0.24022 0.058 0.4373 0.21573 0.6472 0.1578 0.20989 0.40143 0.44066 0.81315 0.76336 0.40266 0.31441 0.64021 0.51199 0.76337 0.68039 0.12315 0.1684 0.14935 0.30267 0.14935 0.53104 0 0.66897-0.50655 1.2446-1.0953 1.2446-0.21774 0-0.32277-0.03595-0.41487-0.14936-0.0921-0.11344-0.17238-0.33165-0.23232-0.68039 0.00044-0.0057 0.00044-0.01111 0-0.01659-0.005-0.0064-0.0105-0.01175-0.0166-0.01659-0.008-0.01353-0.0197-0.02484-0.0332-0.03317-0.005-0.0064-0.0105-0.01175-0.0166-0.01659-0.006-0.000448-0.0111-0.000448-0.0166 0-0.011-0.0021-0.0222-0.0021-0.0332 0-0.006-0.000448-0.0111-0.000448-0.0166 0-0.006 0.005-0.0117 0.01046-0.0166 0.01659-0.006-0.000456-0.011-0.000456-0.0166 0l-0.73017 0.51444c-0.0158 0.01288-0.0273 0.03025-0.0332 0.04976-0.002 0.01096-0.002 0.02221 0 0.03317-0.00046 0.0057-0.00046 0.01111 0 0.01659 0.0349 0.32061 0.14653 0.57398 0.3319 0.74678 0.18535 0.17279 0.43569 0.24892 0.74676 0.24892z"/>
|
<rect
|
||||||
<path opacity=".2" d="m30.875 31.75 5.0312 10.062c0.08495-0.16942 0.15733-0.33462 0.25-0.5l-4.625-9.218-0.656-0.344zm34.25 0-0.65625 0.34375-4.625 9.2188c0.09267 0.16538 0.16505 0.33058 0.25 0.5l5.031-10.063zm-17.125 7.344c-4.8655 0-8.8125 3.947-8.8125 8.8125 0 0.16794 0.02197 0.33437 0.03125 0.5 0.25961-4.6329 4.0837-8.3125 8.7812-8.3125 4.6976-0.000002 8.5216 3.6796 8.7812 8.3125 0.0093-0.16563 0.03125-0.33206 0.03125-0.5 0-4.8655-3.947-8.8125-8.8125-8.8125zm-33.438 9.3125-2.4062 0.5 23.188 4.8438c0.16281 0.42364 0.35815 0.81943 0.5625 1.2188l0.25-0.5c-0.31-0.556-0.582-1.119-0.812-1.719l-20.782-4.344zm66.875 0-20.781 4.344c-0.23062 0.6001-0.50254 1.1631-0.8125 1.7188l0.25 0.5c0.20435-0.39932 0.39969-0.79511 0.5625-1.2188l23.188-4.8438-2.4062-0.5zm-39.999 11.344-9.907 4.906-0.656 1.344 10.563-5.25c0.55561 0.30997 1.1187 0.58188 1.7188 0.8125l4.843 23.188 4.844-23.188c0.6-0.23 1.163-0.502 1.718-0.812l10.563 5.25-0.656-1.344-9.907-4.906c-0.5556 0.30997-1.1187 0.58188-1.7188 0.8125l-4.843 23.194-4.844-23.188c-0.6-0.23-1.163-0.502-1.718-0.812z" display="inline" fill="#fff"/>
|
rx="6"
|
||||||
<path opacity=".2" display="inline" d="m48 12.031-4.844 23.219c-0.5951 0.2287-1.1674 0.47449-1.7188 0.78125l-10.562-5.281 0.65625 1.3438 9.9062 4.9375c0.552-0.307 1.124-0.552 1.719-0.781l4.844-23.219 4.844 23.219c0.5951 0.2287 1.1674 0.47449 1.7188 0.78125l9.906-4.937 0.656-1.344-10.563 5.281c-0.551-0.307-1.123-0.552-1.718-0.781l-4.844-23.219zm-12.094 29.781c-0.20393 0.40673-0.39751 0.82069-0.5625 1.25l-23.188 4.8438 2.4062 0.5 20.781-4.3438c0.23371-0.60814 0.49736-1.1876 0.8125-1.75l-0.25-0.5zm24.188 0-0.25 0.5c0.31515 0.5624 0.57879 1.1419 0.8125 1.75l20.781 4.3438 2.4062-0.5-23.188-4.8438c-0.16499-0.42931-0.35856-0.84327-0.5625-1.25zm-20.875 6.5938c-0.0093 0.16563-0.03125 0.33206-0.03125 0.5 0 4.8655 3.947 8.8125 8.8125 8.8125s8.8125-3.947 8.8125-8.8125c0-0.16794-0.02197-0.33437-0.03125-0.5-0.25961 4.6329-4.0837 8.3125-8.7812 8.3125-4.6976-0.000002-8.5216-3.6796-8.7812-8.3125zm-3.3125 6.5625-5.031 10.032 0.65625-0.34375 4.625-9.1875c-0.09114-0.16338-0.16488-0.33367-0.25-0.5zm24.188 0c-0.08512 0.16633-0.15886 0.33662-0.25 0.5l4.625 9.1875 0.656 0.344-5.031-10.031z"/>
|
ry="6"
|
||||||
<g fill-rule="evenodd">
|
height="84"
|
||||||
<path opacity=".05" d="m68.344 11.656a0.80733 0.80733 0 0 0 -0.094 0.032c-0.84331 0.36132-1.3786 1.0483-1.7812 1.6562-0.40265 0.60798-0.71865 1.1678-1.0625 1.5312a0.80733 0.80733 0 0 0 -0.0625 0.09375c-7.4189 10.272-14.948 20.506-22.312 30.812a0.80733 0.80733 0 0 0 -0.09375 0.125c-5.556 12.477-11.163 24.994-16.688 37.469a0.80733 0.80733 0 0 0 -0.03125 0.0625c-0.33362 1.0756 0.3584 2.082 1.1875 2.4688 0.41455 0.19339 0.86107 0.28683 1.3438 0.1875 0.46917-0.09655 0.94963-0.38905 1.25-0.84375 0.0035-0.0053-0.0035-0.02589 0-0.03125h0.03125c8.008-11.094 16.11-22.154 24.063-33.281a0.80733 0.80733 0 0 0 0.09375 -0.125c5.568-12.501 11.169-25.021 16.718-37.532a0.80733 0.80733 0 0 0 0.0625 -0.1875c0.2153-1.4496-1.1068-2.6871-2.5312-2.4375a0.80733 0.80733 0 0 0 -0.09375 0z"/>
|
width="84"
|
||||||
<path opacity="0.08" d="m68.562 12.438c-1.2325 0.52808-1.6769 2.0539-2.5725 3.0006-7.422 10.275-14.943 20.511-22.302 30.811-5.556 12.478-11.164 24.966-16.688 37.438-0.41935 1.352 1.5938 2.2908 2.3438 1.0938 8.0188-11.109 16.137-22.179 24.094-33.312 5.5687-12.501 11.171-24.991 16.719-37.5 0.1381-0.92987-0.67669-1.6919-1.5938-1.5312z"/>
|
y="6"
|
||||||
<path opacity="0.12" d="m68.781 13.125a0.61863 0.61863 0 0 0 -0.4375 0.25l-23.938 33a0.61863 0.61863 0 0 0 -0.064 0.125l-16.624 37.25a0.61863 0.61863 0 0 0 1.062 0.625l23.938-33.031a0.61863 0.61863 0 0 0 0.063 -0.125l16.623-37.219a0.61863 0.61863 0 0 0 -0.625 -0.875z"/>
|
x="6"
|
||||||
<path opacity=".3" d="m68.844 13.75-23.938 33-16.625 37.25 23.938-33.031 16.625-37.219z"/>
|
fill="#fff"
|
||||||
<g display="inline" transform="matrix(.73161 .4224 -.4224 .73161 28.777 -25.989)">
|
id="rect15" />
|
||||||
<path fill="url(#p)" d="m69 64h-10l5-48 5 48z"/>
|
</clipPath>
|
||||||
<path fill="url(#q)" d="m69 64h-10l5 48 5-48z"/>
|
<linearGradient
|
||||||
<path fill="url(#s)" d="m65.503 63.921a1.7404 1.7404 0 1 1 -3.4808 0 1.7404 1.7404 0 1 1 3.4808 0z" transform="matrix(1.1491,0,0,1.1491,-9.2727,-9.4546)"/>
|
id="x"
|
||||||
</g>
|
y2="138.66"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
x2="48"
|
||||||
|
y1="20.221"
|
||||||
|
x1="48">
|
||||||
|
<stop
|
||||||
|
stop-color="#fff"
|
||||||
|
offset="0"
|
||||||
|
id="stop18" />
|
||||||
|
<stop
|
||||||
|
stop-color="#fff"
|
||||||
|
stop-opacity="0"
|
||||||
|
offset="1"
|
||||||
|
id="stop20" />
|
||||||
|
</linearGradient>
|
||||||
|
<filter
|
||||||
|
id="w"
|
||||||
|
height="1.288"
|
||||||
|
width="1.288"
|
||||||
|
color-interpolation-filters="sRGB"
|
||||||
|
y="-0.144"
|
||||||
|
x="-0.144">
|
||||||
|
<feGaussianBlur
|
||||||
|
stdDeviation="3.96"
|
||||||
|
id="feGaussianBlur23" />
|
||||||
|
</filter>
|
||||||
|
<linearGradient
|
||||||
|
id="p"
|
||||||
|
y2="40"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
x2="69"
|
||||||
|
y1="40"
|
||||||
|
x1="59">
|
||||||
|
<stop
|
||||||
|
stop-color="#ff7c53"
|
||||||
|
offset="0"
|
||||||
|
id="stop26" />
|
||||||
|
<stop
|
||||||
|
stop-color="#f21919"
|
||||||
|
offset=".5"
|
||||||
|
id="stop28" />
|
||||||
|
<stop
|
||||||
|
stop-color="#db1414"
|
||||||
|
offset=".5"
|
||||||
|
id="stop30" />
|
||||||
|
<stop
|
||||||
|
stop-color="#9b1818"
|
||||||
|
offset="1"
|
||||||
|
id="stop32" />
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient
|
||||||
|
id="q"
|
||||||
|
y2="88"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
x2="69"
|
||||||
|
y1="88"
|
||||||
|
x1="59">
|
||||||
|
<stop
|
||||||
|
stop-color="#f0f0f0"
|
||||||
|
offset="0"
|
||||||
|
id="stop35" />
|
||||||
|
<stop
|
||||||
|
stop-color="#e6e6e6"
|
||||||
|
offset=".5"
|
||||||
|
id="stop37" />
|
||||||
|
<stop
|
||||||
|
stop-color="#d2d2d2"
|
||||||
|
offset=".5"
|
||||||
|
id="stop39" />
|
||||||
|
<stop
|
||||||
|
stop-color="#bebebe"
|
||||||
|
offset="1"
|
||||||
|
id="stop41" />
|
||||||
|
</linearGradient>
|
||||||
|
<radialGradient
|
||||||
|
id="s"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
cy="63.28"
|
||||||
|
cx="63.335"
|
||||||
|
gradientTransform="matrix(0.644,-1.4509e-6,1.4509e-6,0.644,22.699,22.756)"
|
||||||
|
r="1.7404">
|
||||||
|
<stop
|
||||||
|
stop-color="#c1c1c1"
|
||||||
|
offset="0"
|
||||||
|
id="stop44" />
|
||||||
|
<stop
|
||||||
|
stop-color="#3f3f3f"
|
||||||
|
offset="1"
|
||||||
|
id="stop46" />
|
||||||
|
</radialGradient>
|
||||||
|
<linearGradient
|
||||||
|
id="y"
|
||||||
|
y2="-18.667"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
x2="49.428"
|
||||||
|
y1="83.553"
|
||||||
|
x1="49.428">
|
||||||
|
<stop
|
||||||
|
offset="0"
|
||||||
|
id="stop49" />
|
||||||
|
<stop
|
||||||
|
stop-opacity="0"
|
||||||
|
offset="1"
|
||||||
|
id="stop51" />
|
||||||
|
</linearGradient>
|
||||||
|
<radialGradient
|
||||||
|
id="z"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
cy="64"
|
||||||
|
cx="64"
|
||||||
|
gradientTransform="matrix(.72973 0 0 .72973 1.2973 1.2973)"
|
||||||
|
r="37">
|
||||||
|
<stop
|
||||||
|
stop-color="#fff"
|
||||||
|
offset="0"
|
||||||
|
id="stop54" />
|
||||||
|
<stop
|
||||||
|
stop-color="#fff"
|
||||||
|
stop-opacity=".62745"
|
||||||
|
offset="1"
|
||||||
|
id="stop56" />
|
||||||
|
</radialGradient>
|
||||||
|
<linearGradient
|
||||||
|
id="n"
|
||||||
|
y2="40"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
x2="69"
|
||||||
|
gradientTransform="matrix(.41573 .42054 -.3236 .32735 18.291 -24.237)"
|
||||||
|
y1="40"
|
||||||
|
x1="59">
|
||||||
|
<stop
|
||||||
|
stop-color="#ff7c53"
|
||||||
|
offset="0"
|
||||||
|
id="stop59" />
|
||||||
|
<stop
|
||||||
|
stop-color="#f21919"
|
||||||
|
offset=".5"
|
||||||
|
id="stop61" />
|
||||||
|
<stop
|
||||||
|
stop-color="#db1414"
|
||||||
|
offset=".5"
|
||||||
|
id="stop63" />
|
||||||
|
<stop
|
||||||
|
stop-color="#9b1818"
|
||||||
|
offset="1"
|
||||||
|
id="stop65" />
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient
|
||||||
|
id="o"
|
||||||
|
y2="88"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
x2="69"
|
||||||
|
gradientTransform="matrix(.41573 .42054 -.3236 .32735 18.291 -24.237)"
|
||||||
|
y1="88"
|
||||||
|
x1="59">
|
||||||
|
<stop
|
||||||
|
stop-color="#f0f0f0"
|
||||||
|
offset="0"
|
||||||
|
id="stop68" />
|
||||||
|
<stop
|
||||||
|
stop-color="#e6e6e6"
|
||||||
|
offset=".5"
|
||||||
|
id="stop70" />
|
||||||
|
<stop
|
||||||
|
stop-color="#d2d2d2"
|
||||||
|
offset=".5"
|
||||||
|
id="stop72" />
|
||||||
|
<stop
|
||||||
|
stop-color="#bebebe"
|
||||||
|
offset="1"
|
||||||
|
id="stop74" />
|
||||||
|
</linearGradient>
|
||||||
|
<radialGradient
|
||||||
|
id="r"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
cy="63.28"
|
||||||
|
cx="63.335"
|
||||||
|
gradientTransform="matrix(.23949 .24226 -.23948 .24226 24.225 -7.3042)"
|
||||||
|
r="1.7404">
|
||||||
|
<stop
|
||||||
|
stop-color="#c1c1c1"
|
||||||
|
offset="0"
|
||||||
|
id="stop77" />
|
||||||
|
<stop
|
||||||
|
stop-color="#3f3f3f"
|
||||||
|
offset="1"
|
||||||
|
id="stop79" />
|
||||||
|
</radialGradient>
|
||||||
|
</defs>
|
||||||
|
<g
|
||||||
|
display="none"
|
||||||
|
transform="translate(0,-48)"
|
||||||
|
id="g81">
|
||||||
|
<rect
|
||||||
|
opacity=".9"
|
||||||
|
rx="6"
|
||||||
|
ry="6"
|
||||||
|
height="85"
|
||||||
|
filter="url(#v)"
|
||||||
|
width="86"
|
||||||
|
y="7"
|
||||||
|
x="5"
|
||||||
|
fill="url(#t)"
|
||||||
|
id="rect83" />
|
||||||
</g>
|
</g>
|
||||||
</g>
|
<g
|
||||||
<g display="none" transform="translate(0,-48)">
|
display="none"
|
||||||
<path display="inline" fill="url(#z)" d="m48 21-3.649 17.468c-0.4481 0.1722-0.88465 0.36192-1.2998 0.5929l-7.9358-3.9679 3.9679 7.9358c-0.237 0.423-0.439 0.864-0.615 1.322l-17.468 3.649 17.468 3.649c0.17365 0.45186 0.38232 0.88147 0.61571 1.2998l-3.9679 7.9358 7.9358-3.9679c0.41835 0.2334 0.84797 0.44206 1.2998 0.61571l3.648 17.467 3.649-17.468c0.45186-0.17365 0.88148-0.38231 1.2998-0.61571l7.9358 3.9679-3.9679-7.9358c0.23339-0.41836 0.44206-0.84797 0.61571-1.2998l17.467-3.648-17.468-3.649c-0.176-0.458-0.378-0.899-0.616-1.322l3.9679-7.9358-7.9358 3.9679c-0.415-0.231-0.851-0.421-1.299-0.593l-3.649-17.468zm0 20.364c3.6636 0 6.636 2.9723 6.636 6.636 0 3.6636-2.9723 6.636-6.636 6.636-3.6636-0.000001-6.636-2.9723-6.636-6.636 0-3.6636 2.9723-6.636 6.636-6.636z"/>
|
transform="translate(0,-48)"
|
||||||
<path display="inline" fill="#fff" d="m52.539 10.836c-0.51471 0-1.0474 0.34477-1.6352 1.034-0.27321 0.31859-0.46156 0.63682-0.65076 1.1674-0.1892 0.53062-0.37766 1.2818-0.65075 2.485-0.11127 0.52267-0.22801 1.0506-0.35041 1.5844-0.005 0.02588-0.0651 0.21582-0.10012 0.35023-0.43816-0.90775-0.65409-1.6163-1.7354-5.6538-0.005-0.0062-0.0105-0.01178-0.0167-0.01668-0.004-0.01204-0.009-0.02335-0.0167-0.03335-0.01-0.0076-0.0213-0.01321-0.0334-0.01668-0.006-0.000454-0.0111-0.000454-0.0166 0-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0166 0.01668-0.006 0.0049-0.0118 0.01049-0.0167 0.01668l-0.33372 0.31688c-0.231-0.019-0.396-0.034-0.584-0.034-0.6807 0-1.1184 0.12634-1.5351 0.4503-0.73237 0.57188-1.2348 1.3847-1.2348 2.0514 0 0.29458 0.062 0.61294 0.26698 1.034 0.008 0.01356 0.0198 0.02499 0.0334 0.03335 0.01 0.0076 0.0213 0.0132 0.0334 0.01668 0.006 0.000455 0.0111 0.000455 0.0167 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.006 0.000455 0.0111 0.000455 0.0167 0 0.006-0.0049 0.0118-0.01049 0.0167-0.01668l0.78425-0.51701c0.0136-0.0084 0.025-0.01979 0.0334-0.03335 0.006-0.0049 0.0118-0.0105 0.0167-0.01668 0.00046-0.0056 0.00046-0.01112 0-0.01668 0.002-0.01104 0.002-0.02231 0-0.03335 0.00046-0.0056 0.00046-0.01112 0-0.01668 0.00046-0.0056 0.00046-0.01112 0-0.01668-0.27695-0.58685-0.36709-0.82747-0.36709-1.0841 0-0.29544 0.16844-0.5661 0.45052-0.71715 0.24902-0.13482 0.48857-0.16678 0.98448-0.16678 0.1993 0 0.42923 0.0045 0.73419 0.01668-0.50777 2.1522-0.92214 3.5345-1.2681 4.1528-0.11155 0.19644-0.22511 0.31263-0.3671 0.38359-0.14198 0.07095-0.32928 0.10007-0.61738 0.10007-0.20625 0-0.37279-0.01669-0.68413-0.05004-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01668-0.012 0.0035-0.0234 0.0091-0.0334 0.01668l-0.53396 0.76718c-0.008 0.01-0.0132 0.02131-0.0167 0.03335-0.00044 0.0056-0.00044 0.01112 0 0.01668-0.002 0.01104-0.002 0.02232 0 0.03335-0.00044 0.0056-0.00044 0.01112 0 0.01668 0.005 0.0062 0.0105 0.01178 0.0167 0.01668 0.008 0.01356 0.0198 0.02499 0.0334 0.03335 0.005 0.0062 0.0105 0.01178 0.0167 0.01668 0.011 0.0019 0.0223 0.0019 0.0334 0 0.3009 0.02228 0.45661 0.03335 0.61739 0.03335 0.48681 0 0.80964-0.06052 1.118-0.25017 0.58361-0.34523 1.1562-1.1677 1.5184-2.1181 0.15976-0.42912 0.26739-0.84607 0.61739-2.2515l0.31703 1.3175c0.3238 1.3838 0.60125 2.2192 0.98448 2.9853 0.69073 1.4034 1.7045 2.1014 3.0536 2.1014 0.57933 0 1.0052-0.10388 1.5184-0.40027 0.006 0.000454 0.0111 0.000454 0.0166 0 0.006-0.0049 0.0118-0.0105 0.0167-0.01668 0.01-0.01493 0.0156-0.03218 0.0167-0.05003 0.00045-0.0056 0.00045-0.01112 0-0.01668 0.002-0.01104 0.002-0.02231 0-0.03335l-0.26698-1.0007c-0.005-0.0062-0.0105-0.01178-0.0167-0.01668-0.004-0.01204-0.009-0.02335-0.0166-0.03335-0.01-0.0076-0.0213-0.0132-0.0334-0.01668-0.006-0.000455-0.0111-0.000455-0.0167 0-0.011-0.0019-0.0223-0.0019-0.0334 0-0.006-0.000455-0.0112-0.000455-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01668-0.0136 0.0084-0.025 0.01979-0.0334 0.03335-0.006 0.0049-0.0118 0.01049-0.0166 0.01668-0.15516 0.36554-0.23163 0.51088-0.3671 0.66711-0.18374 0.22446-0.423 0.35023-0.66744 0.35023-0.64202 0-1.2642-0.49515-1.8188-1.5344 0.18467-0.93223 0.29241-1.381 0.56733-2.535 0.47849-1.9353 0.7327-2.7102 1.0846-3.4356 0.11224-0.22438 0.2262-0.37593 0.36709-0.46698 0.14089-0.09106 0.30666-0.13342 0.55064-0.13342 0.0829 0 0.13414-0.0047 0.28367 0.01668 0.006 0.000454 0.0111 0.000454 0.0166 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.0196-0.0058 0.0371-0.01747 0.05-0.03335 0.00045-0.0056 0.00045-0.01112 0-0.01668l0.40047-0.73382c0.006-0.0049 0.0118-0.01049 0.0167-0.01668 0.00045-0.0056 0.00045-0.01113 0-0.01668 0.002-0.01104 0.002-0.02231 0-0.03335 0.00045-0.0056 0.00045-0.01112 0-0.01668-0.005-0.0062-0.0105-0.01178-0.0167-0.01668-0.008-0.01356-0.0198-0.02499-0.0334-0.03335-0.005-0.0062-0.0105-0.01179-0.0166-0.01668-0.006-0.000454-0.0111-0.000454-0.0167 0-0.12709-0.01058-0.24428-0.03335-0.35041-0.03335z"/>
|
id="g85">
|
||||||
<path display="inline" fill="#fff" d="m9.7581 46.687c0 1.0568 0.50675 2.3673 1.2517 3.2381 0.88544 1.0114 2.291 1.5639 3.8656 1.5639 0.80348 0.000004 1.4439-0.17902 1.8776-0.55195 0.43367-0.37293 0.64426-0.93277 0.64426-1.6375 0-1.1534-0.55029-2.4074-1.4542-3.3485-0.88473-0.90956-2.1828-1.3983-3.6815-1.3983-0.79132 0.000001-1.4088 0.1873-1.8408 0.55195-0.43191 0.36465-0.66267 0.90109-0.66267 1.5823zm0.69949 0.69914c0-0.51699 0.20461-0.90169 0.57063-1.1775s0.90565-0.44156 1.6015-0.44156c0.91206 0.000003 1.9549 0.26384 2.6323 0.64394 0.90605 0.51238 1.4174 1.3068 1.4174 2.171 0 0.53556-0.20621 0.9432-0.58904 1.2327-0.38284 0.2895-0.95465 0.45996-1.6935 0.45996-1.1145 0.000002-2.1105-0.32203-2.8164-0.84633-0.70585-0.5243-1.1229-1.2471-1.1229-2.0422z"/>
|
<rect
|
||||||
<path display="inline" fill="#fff" d="m85.286 48.717-0.25679-0.825v-0.03666c-0.0176-1.1675-0.26703-1.9331-0.82541-2.64-0.50179-0.62692-1.0354-0.935-1.7059-0.935-0.32979 0-0.59183 0.04595-1.0272 0.22-0.007 0.0054-0.013 0.01153-0.0184 0.01833-0.0149 0.0092-0.0275 0.02176-0.0367 0.03666-0.007 0.0054-0.013 0.01153-0.0184 0.01833-0.0005 0.0061-0.0005 0.01223 0 0.01833-0.002 0.01213-0.002 0.02453 0 0.03666-0.0005 0.0061-0.0005 0.01223 0 0.01833 0.006 0.0068 0.0115 0.01295 0.0184 0.01834l0.58696 0.89834c0.009 0.01491 0.0218 0.02747 0.0367 0.03666 0.006 0.0068 0.0115 0.01295 0.0184 0.01833 0.006 0.0005 0.0122 0.0005 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.38534-0.10832 0.69787-0.165 0.99049-0.165 0.45068 0 0.73004 0.14622 0.93547 0.495 0.19099 0.32426 0.29612 0.86204 0.33017 1.595l-2.5863-0.64167h-0.0184c-0.17301-0.16984-0.25483-0.26966-0.47691-0.45834-0.006-0.0005-0.0122-0.0005-0.0184 0-0.006-0.0068-0.0115-0.01295-0.0184-0.01833-0.006-0.000498-0.0122-0.000498-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.000498-0.0122-0.000498-0.0184 0-0.007 0.0054-0.013 0.01154-0.0184 0.01833-0.0149 0.0092-0.0275 0.02175-0.0367 0.03666-0.007 0.0054-0.013 0.01153-0.0184 0.01833-0.002 0.01213-0.002 0.02453 0 0.03666v0.18333c-0.12235-0.02937-0.25254-0.05969-0.34851-0.09166-0.006-0.000499-0.0122-0.000499-0.0184 0-0.94131-0.23216-1.4542-0.39035-1.7425-0.58667-0.28836-0.19632-0.37422-0.42071-0.49525-0.91667-0.001-0.01962-0.008-0.03859-0.0184-0.055l-0.40354-0.47667c-0.011-0.0083-0.0234-0.01452-0.0367-0.01833-0.006-0.0068-0.0115-0.01295-0.0184-0.01834-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0196 0.0012-0.0386 0.0075-0.055 0.01834-0.007 0.0054-0.0129 0.01153-0.0184 0.01833-0.0108 0.01641-0.0171 0.03538-0.0184 0.055-0.0005 0.0061-0.0005 0.01223 0 0.01833-0.0122 0.3434-0.0184 0.60568-0.0184 0.69667l-0.0184 1.1c0 0.36587-0.006 0.69233-0.0184 0.97167-0.049 1.4804-0.055 1.4896-0.055 2.0167 0 0.32317 0.0172 0.54056 0.11006 0.75167 0.0929 0.21111 0.24252 0.40109 0.49524 0.67834 0.2538 0.28461 0.45736 0.49269 0.64199 0.62334 0.18463 0.13064 0.36355 0.18333 0.53193 0.18333 0.0611 0.000001 0.1746 0.0045 0.31183-0.03666 0.007-0.0054 0.013-0.01153 0.0184-0.01834 0.0149-0.0092 0.0275-0.02175 0.0367-0.03666 0.007-0.0054 0.0129-0.01154 0.0184-0.01833 0.002-0.01213 0.002-0.02453 0-0.03666 0.0005-0.0061 0.0005-0.01223 0-0.01834 0.0005-0.0061 0.0005-0.01223 0-0.01833l-0.348-0.934c-0.006-0.0216-0.0192-0.04076-0.0367-0.055-0.011-0.0083-0.0234-0.01452-0.0367-0.01833-0.006-0.000499-0.0122-0.000499-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.25859 0.03693-0.34248 0.055-0.44022 0.055-0.10971 0-0.19217-0.01491-0.23845-0.03666-0.0463-0.02175-0.0617-0.05312-0.0917-0.12833-0.0599-0.15041-0.0917-0.47808-0.0917-1.0633v-2.915c0.86732 0.93479 1.0966 1.0788 2.568 1.4667 0.0297 0.48382 0.0512 0.65095 0.0734 0.91667 0.0122 0.26876 0.0184 0.4278 0.0184 0.495-0.0005 0.0061-0.0005 0.01223 0 0.01834-0.00071-0.0033-0.001 0.05238 0 0.11 0.001 0.05761 0.0119 0.1422 0.0184 0.22-0.0005 0.0061-0.0005 0.01223 0 0.01834 0.006 0.0068 0.0115 0.01295 0.0184 0.01833-0.0005 0.0061-0.0005 0.01223 0 0.01834 0.1605 0.22211 0.19651 0.25777 0.36685 0.47667 0.006 0.0068 0.0115 0.01295 0.0184 0.01834 0.011 0.0083 0.0234 0.01452 0.0367 0.01833 0.006 0.000499 0.0122 0.000499 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.007-0.0054 0.013-0.01153 0.0184-0.01833 0.0149-0.0092 0.0275-0.02175 0.0367-0.03666 0.007-0.0054 0.013-0.01153 0.0184-0.01834 0.002-0.01213 0.002-0.02453 0-0.03666v-2.0533l2.5496 0.64167v0.29334c0.0244 0.51307 0.0367 0.9107 0.0367 0.97167 0 0.2315-0.012 0.32362-0.11007 0.42167-0.0981 0.09805-0.3133 0.20228-0.71535 0.36667-0.007 0.0054-0.0129 0.01153-0.0184 0.01833-0.0149 0.0092-0.0275 0.02176-0.0367 0.03666-0.007 0.0054-0.0129 0.01153-0.0184 0.01833-0.0005 0.0061-0.0005 0.01223 0 0.01834-0.002 0.01213-0.002 0.02453 0 0.03666-0.0005 0.0061-0.0005 0.01223 0 0.01833 0.004 0.01324 0.01 0.02567 0.0184 0.03666 0.006 0.000498 0.0122 0.000498 0.0184 0l0.82541 0.80667c0.006 0.0068 0.0115 0.01295 0.0184 0.01834 0.006 0.0068 0.0115 0.01295 0.0184 0.01833 0.0121 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.14624-0.01993 0.27031-0.05692 0.36685-0.12833 0.0965-0.07141 0.15984-0.1746 0.20177-0.29333 0.0005-0.0061 0.0005-0.01223 0-0.01833 0.0005-0.0061 0.0005-0.01223 0-0.01833l-0.055-2.475 0.11006 0.03666c0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.0196-0.0012 0.0386-0.0075 0.055-0.01834 0.0174-0.01424 0.0303-0.0334 0.0367-0.055 0.002-0.01214 0.002-0.02453 0-0.03666 0.002-0.01213 0.002-0.02453 0-0.03666z"/>
|
opacity=".15"
|
||||||
<path display="inline" fill="#fff" d="m46.116 85.265c0.60791 0 1.2438-0.33 1.7259-0.79615 0.48208-0.46616 0.81315-1.0705 0.81315-1.6587 0-0.26522-0.0665-0.49939-0.21574-0.72981-0.14925-0.23042-0.37107-0.46049-0.69698-0.71322-0.37336-0.29634-0.59841-0.51502-0.73017-0.71323-0.13177-0.1982-0.18255-0.37189-0.18255-0.6137 0-0.79851 0.78269-1.526 1.6927-1.526 0.44798 0 0.90233 0.19119 1.1782 0.49759 0.22059 0.24148 0.31089 0.44842 0.39828 0.92885-0.00045 0.0057-0.00045 0.01109 0 0.01658 0.005 0.0064 0.0105 0.01174 0.0166 0.01658 0.008 0.01352 0.0197 0.02483 0.0332 0.03315 0.005 0.0064 0.0105 0.01174 0.0166 0.01658 0.006 0.000454 0.011 0.000454 0.0166 0 0.011 0.0021 0.0222 0.0021 0.0332 0 0.006 0.000454 0.0111 0.000454 0.0166 0 0.012-0.0036 0.0232-0.009 0.0332-0.01658l0.16595-0.1161c0.008-0.01 0.0132-0.0212 0.0166-0.03315 0.006-0.005 0.0117-0.01045 0.0166-0.01658l0.49784-1.1611c0.00046-0.0057 0.00046-0.0111 0-0.01658 0.002-0.01095 0.002-0.0222 0-0.03315 0.00046-0.0057 0.00046-0.0111 0-0.01658-0.005-0.0064-0.0105-0.01173-0.0166-0.01658 0.00045-0.0057 0.00045-0.01111 0-0.01658-0.4046-0.54305-0.96642-0.79615-1.7093-0.79615-0.87534 0-1.7421 0.35632-2.3896 0.89567-0.64755 0.53936-1.0787 1.2636-1.0787 2.007 0 0.2401 0.058 0.43708 0.21573 0.64688 0.1578 0.20979 0.40143 0.44045 0.81315 0.76298 0.40266 0.31425 0.64021 0.51174 0.76337 0.68006 0.12315 0.16831 0.14935 0.30252 0.14935 0.53077 0 0.66864-0.50655 1.244-1.0953 1.244-0.21774 0-0.32277-0.03593-0.41487-0.14928-0.0921-0.11338-0.17238-0.33148-0.23232-0.68005 0.00044-0.0057 0.00044-0.0111 0-0.01658-0.005-0.0064-0.0105-0.01174-0.0166-0.01658-0.008-0.01352-0.0197-0.02483-0.0332-0.03315-0.005-0.0064-0.0105-0.01174-0.0166-0.01658-0.006-0.000447-0.0111-0.000447-0.0166 0-0.011-0.0021-0.0222-0.0021-0.0332 0-0.006-0.000447-0.0111-0.000447-0.0166 0-0.006 0.005-0.0117 0.01045-0.0166 0.01658-0.006-0.000456-0.011-0.000456-0.0166 0l-0.73017 0.51418c-0.0158 0.01287-0.0273 0.03024-0.0332 0.04974-0.002 0.01095-0.002 0.0222 0 0.03315-0.00046 0.0057-0.00046 0.01111 0 0.01658 0.0349 0.32045 0.14653 0.57369 0.3319 0.7464 0.18535 0.1727 0.43569 0.24879 0.74676 0.24879z"/>
|
clip-path="url(#u)"
|
||||||
<g fill-rule="evenodd" display="inline" transform="matrix(.91204 0 0 .91204 3.7045 4.3714)">
|
rx="12"
|
||||||
<path opacity=".05" d="m68.344 11.656a0.80733 0.80733 0 0 0 -0.094 0.032c-0.84331 0.36132-1.3786 1.0483-1.7812 1.6562-0.40265 0.60798-0.71865 1.1678-1.0625 1.5312a0.80733 0.80733 0 0 0 -0.0625 0.09375c-7.4189 10.272-14.948 20.506-22.312 30.812a0.80733 0.80733 0 0 0 -0.09375 0.125c-5.556 12.477-11.163 24.994-16.688 37.469a0.80733 0.80733 0 0 0 -0.03125 0.0625c-0.33362 1.0756 0.3584 2.082 1.1875 2.4688 0.41455 0.19339 0.86107 0.28683 1.3438 0.1875 0.46917-0.09655 0.94963-0.38905 1.25-0.84375 0.0035-0.0053-0.0035-0.02589 0-0.03125h0.03125c8.008-11.094 16.11-22.154 24.063-33.281a0.80733 0.80733 0 0 0 0.09375 -0.125c5.568-12.501 11.169-25.021 16.718-37.532a0.80733 0.80733 0 0 0 0.0625 -0.1875c0.2153-1.4496-1.1068-2.6871-2.5312-2.4375a0.80733 0.80733 0 0 0 -0.09375 0z"/>
|
ry="12"
|
||||||
<path opacity="0.08" d="m68.562 12.438c-1.2325 0.52808-1.6769 2.0539-2.5725 3.0006-7.422 10.275-14.943 20.511-22.302 30.811-5.556 12.478-11.164 24.966-16.688 37.438-0.41935 1.352 1.5938 2.2908 2.3438 1.0938 8.0188-11.109 16.137-22.179 24.094-33.312 5.5687-12.501 11.171-24.991 16.719-37.5 0.1381-0.92987-0.67669-1.6919-1.5938-1.5312z"/>
|
height="66"
|
||||||
<path opacity="0.12" d="m68.781 13.125a0.61863 0.61863 0 0 0 -0.4375 0.25l-23.938 33a0.61863 0.61863 0 0 0 -0.064 0.125l-16.624 37.25a0.61863 0.61863 0 0 0 1.062 0.625l23.938-33.031a0.61863 0.61863 0 0 0 0.063 -0.125l16.623-37.219a0.61863 0.61863 0 0 0 -0.625 -0.875z"/>
|
filter="url(#w)"
|
||||||
<path opacity=".3" d="m68.844 13.75-23.938 33-16.625 37.25 23.938-33.031 16.625-37.219z"/>
|
width="66"
|
||||||
<g display="inline" transform="matrix(.73161 .4224 -.4224 .73161 28.777 -25.989)">
|
stroke="#fff"
|
||||||
<path fill="url(#p)" d="m69 64h-10l5-48 5 48z"/>
|
stroke-linecap="round"
|
||||||
<path fill="url(#q)" d="m69 64h-10l5 48 5-48z"/>
|
y="15"
|
||||||
<path fill="url(#s)" d="m65.503 63.921a1.7404 1.7404 0 1 1 -3.4808 0 1.7404 1.7404 0 1 1 3.4808 0z" transform="matrix(1.1491,0,0,1.1491,-9.2727,-9.4546)"/>
|
x="15"
|
||||||
</g>
|
stroke-width=".5"
|
||||||
|
fill="url(#x)"
|
||||||
|
id="rect87" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
display="none"
|
||||||
|
transform="translate(0,-48)"
|
||||||
|
id="g89">
|
||||||
|
<path
|
||||||
|
opacity=".2"
|
||||||
|
d="m48 12.045-4.846 23.198c-0.5951 0.2287-1.1749 0.48065-1.7263 0.78741l-10.539-5.2696 5.2696 10.539c-0.31514 0.5624-0.58399 1.1484-0.8177 1.7565l-23.198 4.8456 23.198 4.8456c0.23062 0.6001 0.50774 1.1706 0.8177 1.7263l-5.2696 10.539 10.539-5.2696c0.55561 0.30997 1.1262 0.58708 1.7263 0.8177l4.846 23.2 4.846-23.198c0.6001-0.23062 1.1707-0.50773 1.7263-0.8177l10.539 5.2696-5.2696-10.539c0.30996-0.5556 0.58708-1.1262 0.8177-1.7263l23.199-4.847-23.199-4.845c-0.23371-0.60814-0.50255-1.1941-0.8177-1.7565l5.27-10.539-10.539 5.27c-0.552-0.307-1.131-0.559-1.726-0.788l-4.846-23.198zm0 27.045c4.8655-0.000002 8.813 3.9474 8.813 8.813 0 4.8655-3.9474 8.813-8.813 8.813-4.8655-0.000002-8.813-3.9474-8.813-8.813 0-4.8655 3.9474-8.813 8.813-8.813z"
|
||||||
|
display="inline"
|
||||||
|
fill="url(#y)"
|
||||||
|
id="path91" />
|
||||||
|
<path
|
||||||
|
opacity=".05"
|
||||||
|
display="inline"
|
||||||
|
d="m48 12.031-4.844 23.219c-0.5951 0.2287-1.1674 0.47449-1.7188 0.78125l-10.562-5.281 5.281 10.562c-0.31514 0.5624-0.57879 1.1419-0.8125 1.75l-23.188 4.8438 23.188 4.8438c0.23062 0.6001 0.50254 1.1631 0.8125 1.7188l-5.281 10.531 10.563-5.25c0.55561 0.30997 1.1187 0.58188 1.7188 0.8125l4.843 23.188 4.844-23.188c0.6-0.23 1.163-0.502 1.718-0.812l10.563 5.25-5.281-10.531c0.30996-0.5556 0.58188-1.1187 0.8125-1.7188l23.188-4.8438-23.188-4.8438c-0.23371-0.60814-0.49735-1.1876-0.8125-1.75l5.281-10.562-10.563 5.281c-0.551-0.307-1.123-0.552-1.718-0.781l-4.844-23.216zm0 2.0312 4.4375 21.281a0.4185 0.4185 0 0 0 0.25 0.28125c0.58524 0.22491 1.1294 0.48813 1.6562 0.78125a0.4185 0.4185 0 0 0 0.40625 0l9.4375-4.7188-4.7188 9.4375a0.4185 0.4185 0 0 0 0 0.40625c0.30388 0.54228 0.58466 1.0946 0.8125 1.6875a0.4185 0.4185 0 0 0 0.28125 0.25l21.25 4.4375-21.25 4.4375a0.4185 0.4185 0 0 0 -0.28125 0.25c-0.22255 0.5791-0.51041 1.1148-0.8125 1.6562a0.4185 0.4185 0 0 0 0 0.40625l4.718 9.407-9.438-4.687a0.4185 0.4185 0 0 0 -0.40625 0c-0.54148 0.30209-1.0771 0.58995-1.6562 0.8125a0.4185 0.4185 0 0 0 -0.25 0.28125l-4.4375 21.25-4.4375-21.25a0.4185 0.4185 0 0 0 -0.25 -0.28125c-0.58-0.223-1.115-0.511-1.657-0.813a0.4185 0.4185 0 0 0 -0.40625 0l-9.4375 4.6875 4.7188-9.4062a0.4185 0.4185 0 0 0 0 -0.40625c-0.30209-0.5415-0.58995-1.0772-0.8125-1.6562a0.4185 0.4185 0 0 0 -0.28125 -0.25l-21.25-4.4375 21.25-4.4375a0.4185 0.4185 0 0 0 0.28125 -0.25c0.22784-0.59286 0.50863-1.1452 0.8125-1.6875a0.4185 0.4185 0 0 0 0 -0.40625l-4.718-9.438 9.438 4.718a0.4185 0.4185 0 0 0 0.40625 0c0.52687-0.29312 1.071-0.55634 1.6562-0.78125a0.4185 0.4185 0 0 0 0.25 -0.28125l4.438-21.282zm0 24.625c-5.0918 0-9.2188 4.1269-9.2188 9.2188 0 5.0918 4.1269 9.2187 9.2188 9.2188 5.0918 0 9.2188-4.1269 9.2188-9.2188 0-5.0918-4.1269-9.2188-9.2188-9.2188zm0 0.40625c4.8655-0.000002 8.8125 3.947 8.8125 8.8125s-3.947 8.8125-8.8125 8.8125c-4.8655-0.000002-8.8125-3.947-8.8125-8.8125s3.947-8.8125 8.8125-8.8125z"
|
||||||
|
id="path93" />
|
||||||
|
<path
|
||||||
|
opacity=".1"
|
||||||
|
display="inline"
|
||||||
|
d="m48 12.031-4.844 23.219c-0.5951 0.2287-1.1674 0.47449-1.7188 0.78125l-10.562-5.281 5.281 10.562c-0.31514 0.5624-0.57879 1.1419-0.8125 1.75l-23.188 4.8438 23.188 4.8438c0.23062 0.6001 0.50254 1.1631 0.8125 1.7188l-5.281 10.531 10.563-5.25c0.55561 0.30997 1.1187 0.58188 1.7188 0.8125l4.843 23.188 4.844-23.188c0.6-0.23 1.163-0.502 1.718-0.812l10.563 5.25-5.281-10.531c0.30996-0.5556 0.58188-1.1187 0.8125-1.7188l23.188-4.8438-23.188-4.8438c-0.23371-0.60814-0.49735-1.1876-0.8125-1.75l5.281-10.562-10.563 5.281c-0.551-0.307-1.123-0.552-1.718-0.781l-4.844-23.216zm0 0.9375 4.6562 22.312a0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0.03125 0.0625 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0c0.59042 0.2269 1.1477 0.48096 1.6875 0.78125a0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0l10-5-5 10a0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125c0.3098 0.55286 0.58158 1.1179 0.8125 1.7188a0.19858 0.19858 0 0 0 0.03125 0.0625 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0.03125 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0l22.282 4.658-22.281 4.656a0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.0625 0.03125 0.19858 0.19858 0 0 0 -0.031 0.032 0.19858 0.19858 0 0 0 -0.03125 0.03125 0.19858 0.19858 0 0 0 0 0.03125c-0.22679 0.59013-0.50628 1.1386-0.8125 1.6875a0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125l5 9.9688-10-4.9688a0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0c-0.5489 0.30623-1.0974 0.58571-1.6875 0.8125a0.19858 0.19858 0 0 0 -0.0625 0.03125 0.19858 0.19858 0 0 0 -0.03125 0.03125 0.19858 0.19858 0 0 0 -0.03125 0.03125 0.19858 0.19858 0 0 0 0 0.03125 0.19858 0.19858 0 0 0 0 0.03125l-4.655 22.28-4.656-22.281a0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 -0.032 -0.062 0.19858 0.19858 0 0 0 -0.031 -0.032 0.19858 0.19858 0 0 0 -0.031 -0.031 0.19858 0.19858 0 0 0 -0.03125 0c-0.59013-0.22679-1.1386-0.50627-1.6875-0.8125a0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0l-10 4.9688 5-9.9688a0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125c-0.30622-0.54891-0.58571-1.0974-0.8125-1.6875a0.19858 0.19858 0 0 0 -0.032 -0.061 0.19858 0.19858 0 0 0 -0.031 -0.031 0.19858 0.19858 0 0 0 -0.031 -0.032 0.19858 0.19858 0 0 0 -0.03125 0 0.19858 0.19858 0 0 0 -0.03125 0l-22.282-4.656 22.281-4.656a0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.0625 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125c0.23092-0.60089 0.50271-1.1659 0.8125-1.7188a0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125l-5-10 10 5a0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0 0.19858 0.19858 0 0 0 0.03125 0c0.53975-0.30029 1.0971-0.55435 1.6875-0.78125a0.19858 0.19858 0 0 0 0.0625 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0.03125 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125 0.19858 0.19858 0 0 0 0 -0.03125l4.655-22.312zm0 25.938c-4.9729 0-9 4.0271-9 9s4.0271 9 9 9 9-4.0271 9-9-4.0271-9-9-9zm0 0.1875c4.8655-0.000002 8.8125 3.947 8.8125 8.8125s-3.947 8.8125-8.8125 8.8125c-4.8655-0.000002-8.8125-3.947-8.8125-8.8125s3.947-8.8125 8.8125-8.8125z"
|
||||||
|
id="path95" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
d="m153.02 10.767c-0.51471 0-1.0474 0.34494-1.6352 1.0345-0.27321 0.31875-0.46156 0.63714-0.65076 1.168-0.1892 0.53089-0.37766 1.2824-0.65075 2.4862-0.11127 0.52293-0.22801 1.0511-0.35041 1.5852-0.005 0.02589-0.0651 0.21593-0.10012 0.35041-0.43816-0.9082-0.65409-1.6171-1.7354-5.6566-0.005-0.0062-0.0105-0.01179-0.0167-0.01669-0.004-0.01205-0.009-0.02336-0.0167-0.03337-0.01-0.0076-0.0213-0.01322-0.0334-0.01669-0.006-0.000454-0.0111-0.000454-0.0166 0-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0166 0.01669-0.006 0.0049-0.0118 0.0105-0.0167 0.01669l-0.33372 0.31704c-0.23103-0.01896-0.39584-0.03337-0.58402-0.03337-0.6807 0-1.1184 0.12641-1.5351 0.45052-0.73237 0.57216-1.2348 1.3854-1.2348 2.0524 0 0.29473 0.062 0.61324 0.26698 1.0345 0.008 0.01357 0.0198 0.025 0.0334 0.03337 0.01 0.0076 0.0213 0.01321 0.0334 0.01669 0.006 0.000454 0.0111 0.000454 0.0167 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.006 0.000454 0.0111 0.000454 0.0167 0 0.006-0.0049 0.0118-0.0105 0.0167-0.01669l0.78425-0.51727c0.0136-0.0084 0.025-0.0198 0.0334-0.03337 0.006-0.0049 0.0118-0.0105 0.0167-0.01669 0.00046-0.0056 0.00046-0.01113 0-0.01669 0.002-0.01105 0.002-0.02232 0-0.03337 0.00046-0.0056 0.00046-0.01113 0-0.01669 0.00046-0.0056 0.00046-0.01113 0-0.01669-0.27695-0.58714-0.36709-0.82788-0.36709-1.0846 0-0.29559 0.16844-0.56638 0.45052-0.7175 0.24902-0.13489 0.48857-0.16686 0.98448-0.16686 0.1993 0 0.42923 0.0045 0.73419 0.01669-0.50777 2.1532-0.92214 3.5362-1.2681 4.1548-0.11155 0.19654-0.22511 0.31279-0.3671 0.38378-0.14198 0.07099-0.32928 0.10012-0.61738 0.10012-0.20625 0-0.37279-0.0167-0.68413-0.05006-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01669-0.012 0.0035-0.0233 0.0091-0.0334 0.01669l-0.53396 0.76756c-0.008 0.01001-0.0132 0.02132-0.0167 0.03337-0.00044 0.0056-0.00044 0.01113 0 0.01669-0.002 0.01105-0.002 0.02232 0 0.03337-0.00044 0.0056-0.00044 0.01113 0 0.01669 0.005 0.0062 0.0105 0.01179 0.0167 0.01669 0.008 0.01357 0.0198 0.025 0.0334 0.03337 0.005 0.0062 0.0105 0.01179 0.0167 0.01669 0.011 0.0019 0.0223 0.0019 0.0334 0 0.3009 0.02229 0.45661 0.03337 0.61739 0.03337 0.48681 0 0.80964-0.06055 1.118-0.25029 0.58361-0.34541 1.1562-1.1683 1.5184-2.1191 0.15976-0.42934 0.26739-0.84649 0.61739-2.2526l0.31703 1.3182c0.3238 1.3845 0.60125 2.2203 0.98448 2.9868 0.69073 1.4041 1.7045 2.1024 3.0536 2.1024 0.57933 0.000001 1.0052-0.10392 1.5184-0.40047 0.006 0.000455 0.0111 0.000455 0.0166 0 0.006-0.0049 0.0118-0.0105 0.0167-0.01669 0.01-0.01494 0.0156-0.0322 0.0167-0.05006 0.00045-0.0056 0.00045-0.01113 0-0.01669 0.002-0.01105 0.002-0.02232 0-0.03337l-0.26698-1.0012c-0.005-0.0062-0.0105-0.01179-0.0167-0.01669-0.004-0.01205-0.009-0.02336-0.0166-0.03337-0.01-0.0076-0.0213-0.01321-0.0334-0.01669-0.006-0.000454-0.0111-0.000454-0.0167 0-0.011-0.0019-0.0223-0.0019-0.0334 0-0.006-0.000454-0.0112-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01669-0.0136 0.0084-0.025 0.0198-0.0334 0.03337-0.006 0.0049-0.0118 0.0105-0.0166 0.01669-0.15516 0.36572-0.23163 0.51113-0.3671 0.66744-0.18374 0.22457-0.423 0.35041-0.66744 0.35041-0.64202 0-1.2642-0.49539-1.8188-1.5351 0.18467-0.9327 0.29241-1.3816 0.56733-2.5363 0.47849-1.9362 0.7327-2.7116 1.0846-3.4373 0.11224-0.22449 0.2262-0.37612 0.36709-0.46721s0.30666-0.13349 0.55064-0.13349c0.0829 0 0.13414-0.0047 0.28367 0.01669 0.006 0.000455 0.0111 0.000455 0.0166 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.0196-0.0058 0.0371-0.01748 0.05-0.03337 0.00045-0.0056 0.00045-0.01113 0-0.01669l0.40047-0.73419c0.006-0.0049 0.0118-0.0105 0.0167-0.01669 0.00045-0.0056 0.00045-0.01113 0-0.01669 0.002-0.01105 0.002-0.02232 0-0.03337 0.00045-0.0056 0.00045-0.01113 0-0.01669-0.005-0.0062-0.0105-0.01179-0.0167-0.01669-0.008-0.01357-0.0198-0.025-0.0334-0.03337-0.005-0.0062-0.0105-0.01179-0.0166-0.01669-0.006-0.000454-0.0111-0.000454-0.0167 0-0.12709-0.01059-0.24428-0.03337-0.35041-0.03337z"
|
||||||
|
id="path97" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
d="m110.24 46.636c0 1.0573 0.50675 2.3685 1.2517 3.2397 0.88544 1.0119 2.291 1.5646 3.8656 1.5646 0.80347 0.000003 1.4439-0.17911 1.8776-0.55223 0.43367-0.37312 0.64427-0.93323 0.64427-1.6383 0-1.1539-0.5503-2.4086-1.4542-3.3502-0.88473-0.91001-2.1828-1.399-3.6815-1.399-0.79132 0.000002-1.4088 0.1874-1.8408 0.55223-0.4319 0.36483-0.66267 0.90154-0.66267 1.5831zm0.69949 0.69949c0-0.51725 0.20461-0.90214 0.57063-1.1781 0.36602-0.27594 0.90566-0.44178 1.6015-0.44178 0.91206 0.000004 1.9549 0.26397 2.6323 0.64427 0.90605 0.51264 1.4174 1.3075 1.4174 2.1721 0 0.53583-0.2062 0.94367-0.58904 1.2333-0.38284 0.28964-0.95465 0.46019-1.6935 0.46019-1.1145 0.000001-2.1105-0.32219-2.8164-0.84675-0.70585-0.52456-1.1229-1.2478-1.1229-2.0432z"
|
||||||
|
id="path99" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
d="m185.76 48.667-0.25679-0.82541v-0.03668c-0.0176-1.168-0.26703-1.934-0.82541-2.6413-0.50179-0.62724-1.0354-0.93547-1.7059-0.93547-0.32979 0-0.59183 0.04597-1.0272 0.22011-0.007 0.0054-0.013 0.01154-0.0184 0.01834-0.0149 0.0092-0.0275 0.02177-0.0367 0.03668-0.007 0.0054-0.013 0.01154-0.0184 0.01835-0.0005 0.0061-0.0005 0.01224 0 0.01834-0.002 0.01214-0.002 0.02454 0 0.03668-0.0005 0.0061-0.0005 0.01224 0 0.01835 0.006 0.0068 0.0115 0.01296 0.0184 0.01834l0.58696 0.89878c0.009 0.01492 0.0218 0.02748 0.0367 0.03668 0.006 0.0068 0.0115 0.01296 0.0184 0.01835 0.006 0.000499 0.0122 0.000499 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.38534-0.10838 0.69787-0.16508 0.99049-0.16508 0.45068 0 0.73004 0.14629 0.93547 0.49525 0.19099 0.32442 0.29612 0.86246 0.33017 1.5958l-2.5863-0.64199h-0.0184c-0.17301-0.16993-0.25483-0.2698-0.47691-0.45856-0.006-0.0005-0.0122-0.0005-0.0184 0-0.006-0.0068-0.0115-0.01296-0.0184-0.01834-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.0005-0.0122-0.0005-0.0184 0-0.007 0.0054-0.013 0.01154-0.0184 0.01834-0.0149 0.0092-0.0275 0.02176-0.0367 0.03668-0.007 0.0054-0.013 0.01154-0.0184 0.01835-0.002 0.01214-0.002 0.02454 0 0.03668v0.18343c-0.12235-0.02938-0.25254-0.05972-0.34851-0.09171-0.006-0.000499-0.0122-0.000499-0.0184 0-0.94131-0.23227-1.4542-0.39055-1.7425-0.58696-0.28836-0.19642-0.37422-0.42092-0.49525-0.91713-0.001-0.01963-0.008-0.0386-0.0184-0.05503l-0.40354-0.47691c-0.011-0.0083-0.0234-0.01453-0.0367-0.01834-0.006-0.0068-0.0115-0.01295-0.0184-0.01834-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0196 0.0012-0.0386 0.0075-0.055 0.01834-0.007 0.0054-0.0129 0.01154-0.0184 0.01834-0.0108 0.01642-0.0171 0.0354-0.0184 0.05503-0.0005 0.0061-0.0005 0.01224 0 0.01835-0.0122 0.34357-0.0184 0.60598-0.0184 0.69702l-0.0184 1.1006c0 0.36605-0.006 0.69267-0.0184 0.97215-0.049 1.4811-0.055 1.4904-0.055 2.0177 0 0.32333 0.0172 0.54083 0.11006 0.75204 0.0929 0.21121 0.24252 0.40129 0.49524 0.67867 0.2538 0.28475 0.45736 0.49294 0.64199 0.62364 0.18463 0.13071 0.36355 0.18343 0.53193 0.18343 0.0611 0 0.1746 0.0045 0.31183-0.03668 0.007-0.0054 0.013-0.01154 0.0184-0.01834 0.0149-0.0092 0.0275-0.02176 0.0367-0.03668 0.007-0.0054 0.0129-0.01154 0.0184-0.01834 0.002-0.01214 0.002-0.02454 0-0.03668 0.0005-0.0061 0.0005-0.01224 0-0.01834 0.0005-0.0061 0.0005-0.01224 0-0.01834l-0.34851-0.93547c-0.006-0.02161-0.0192-0.04078-0.0367-0.05503-0.011-0.0083-0.0234-0.01453-0.0367-0.01834-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.25859 0.03695-0.34248 0.05503-0.44022 0.05503-0.10971 0-0.19217-0.01492-0.23845-0.03668-0.0463-0.02176-0.0617-0.05315-0.0917-0.1284-0.0599-0.15048-0.0917-0.47832-0.0917-1.0639v-2.9165c0.86732 0.93525 1.0966 1.0793 2.568 1.4674 0.0297 0.48406 0.0512 0.65127 0.0734 0.91713 0.0122 0.26889 0.0184 0.42802 0.0184 0.49525-0.0005 0.0061-0.0005 0.01224 0 0.01834-0.00071-0.0033-0.001 0.05241 0 0.11006 0.001 0.05764 0.0119 0.14227 0.0184 0.22011-0.0005 0.0061-0.0005 0.01224 0 0.01834 0.006 0.0068 0.0115 0.01296 0.0184 0.01835-0.0005 0.0061-0.0005 0.01224 0 0.01834 0.1605 0.22222 0.19651 0.2579 0.36685 0.4769 0.006 0.0068 0.0115 0.01296 0.0184 0.01834 0.011 0.0083 0.0234 0.01453 0.0367 0.01834 0.006 0.0005 0.0122 0.0005 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.007-0.0054 0.013-0.01154 0.0184-0.01834 0.0149-0.0092 0.0275-0.02176 0.0367-0.03668 0.007-0.0054 0.013-0.01154 0.0184-0.01835 0.002-0.01214 0.002-0.02454 0-0.03668v-2.0544l2.5496 0.64199v0.29348c0.0244 0.51332 0.0367 0.91115 0.0367 0.97215 0 0.23161-0.012 0.32378-0.11007 0.42188-0.0981 0.0981-0.3133 0.20238-0.71535 0.36685-0.007 0.0054-0.0129 0.01154-0.0184 0.01834-0.0149 0.0092-0.0275 0.02177-0.0367 0.03668-0.007 0.0054-0.0129 0.01154-0.0184 0.01835-0.0005 0.0061-0.0005 0.01224 0 0.01834-0.002 0.01214-0.002 0.02454 0 0.03668-0.0005 0.0061-0.0005 0.01224 0 0.01835 0.004 0.01325 0.01 0.02568 0.0184 0.03668 0.006 0.000499 0.0122 0.000499 0.0184 0l0.82541 0.80707c0.006 0.0068 0.0115 0.01295 0.0184 0.01834 0.006 0.0068 0.0115 0.01296 0.0184 0.01835 0.0121 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.14624-0.01994 0.27031-0.05695 0.36685-0.1284 0.0965-0.07144 0.15984-0.17468 0.20177-0.29348 0.0005-0.0061 0.0005-0.01224 0-0.01835 0.0005-0.0061 0.0005-0.01224 0-0.01834l-0.055-2.4762 0.11006 0.03668c0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.0196-0.0012 0.0386-0.0075 0.055-0.01835 0.0174-0.01425 0.0303-0.03342 0.0367-0.05503 0.002-0.01214 0.002-0.02454 0-0.03668 0.002-0.01214 0.002-0.02454 0-0.03668z"
|
||||||
|
id="path101" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
d="m146.59 85.233c0.60791 0 1.2438-0.33016 1.7259-0.79655 0.48208-0.46639 0.81315-1.071 0.81315-1.6595 0-0.26536-0.0665-0.49964-0.21574-0.73017-0.14925-0.23053-0.37107-0.46072-0.69698-0.71358-0.37336-0.29649-0.59841-0.51528-0.73017-0.71358-0.13177-0.1983-0.18255-0.37208-0.18255-0.614 0-0.79891 0.78269-1.5267 1.6927-1.5267 0.44798 0 0.90233 0.19128 1.1782 0.49784 0.22059 0.2416 0.31089 0.44864 0.39828 0.92931-0.00045 0.0057-0.00045 0.0111 0 0.01659 0.005 0.0064 0.0105 0.01175 0.0166 0.01659 0.008 0.01353 0.0197 0.02484 0.0332 0.03317 0.005 0.0064 0.0105 0.01175 0.0166 0.01659 0.006 0.000455 0.011 0.000455 0.0166 0 0.011 0.0021 0.0222 0.0021 0.0332 0 0.006 0.000455 0.0111 0.000455 0.0166 0 0.012-0.0036 0.0232-0.009 0.0332-0.01659l0.16595-0.11616c0.008-0.01 0.0132-0.02121 0.0166-0.03317 0.006-0.005 0.0117-0.01046 0.0166-0.01659l0.49784-1.1616c0.00046-0.0057 0.00046-0.01111 0-0.01659 0.002-0.01096 0.002-0.02221 0-0.03317 0.00046-0.0057 0.00046-0.01111 0-0.01659-0.005-0.0064-0.0105-0.01174-0.0166-0.01659 0.00045-0.0057 0.00045-0.01111 0-0.01659-0.4046-0.54332-0.96642-0.79655-1.7093-0.79655-0.87534 0-1.7421 0.35649-2.3896 0.89612-0.64755 0.53963-1.0787 1.2642-1.0787 2.008 0 0.24022 0.058 0.4373 0.21573 0.6472 0.1578 0.20989 0.40143 0.44066 0.81315 0.76336 0.40266 0.31441 0.64021 0.51199 0.76337 0.68039 0.12315 0.1684 0.14935 0.30267 0.14935 0.53104 0 0.66897-0.50655 1.2446-1.0953 1.2446-0.21774 0-0.32277-0.03595-0.41487-0.14936-0.0921-0.11344-0.17238-0.33165-0.23232-0.68039 0.00044-0.0057 0.00044-0.01111 0-0.01659-0.005-0.0064-0.0105-0.01175-0.0166-0.01659-0.008-0.01353-0.0197-0.02484-0.0332-0.03317-0.005-0.0064-0.0105-0.01175-0.0166-0.01659-0.006-0.000448-0.0111-0.000448-0.0166 0-0.011-0.0021-0.0222-0.0021-0.0332 0-0.006-0.000448-0.0111-0.000448-0.0166 0-0.006 0.005-0.0117 0.01046-0.0166 0.01659-0.006-0.000456-0.011-0.000456-0.0166 0l-0.73017 0.51444c-0.0158 0.01288-0.0273 0.03025-0.0332 0.04976-0.002 0.01096-0.002 0.02221 0 0.03317-0.00046 0.0057-0.00046 0.01111 0 0.01659 0.0349 0.32061 0.14653 0.57398 0.3319 0.74678 0.18535 0.17279 0.43569 0.24892 0.74676 0.24892z"
|
||||||
|
id="path103" />
|
||||||
|
<path
|
||||||
|
opacity=".2"
|
||||||
|
d="m30.875 31.75 5.0312 10.062c0.08495-0.16942 0.15733-0.33462 0.25-0.5l-4.625-9.218-0.656-0.344zm34.25 0-0.65625 0.34375-4.625 9.2188c0.09267 0.16538 0.16505 0.33058 0.25 0.5l5.031-10.063zm-17.125 7.344c-4.8655 0-8.8125 3.947-8.8125 8.8125 0 0.16794 0.02197 0.33437 0.03125 0.5 0.25961-4.6329 4.0837-8.3125 8.7812-8.3125 4.6976-0.000002 8.5216 3.6796 8.7812 8.3125 0.0093-0.16563 0.03125-0.33206 0.03125-0.5 0-4.8655-3.947-8.8125-8.8125-8.8125zm-33.438 9.3125-2.4062 0.5 23.188 4.8438c0.16281 0.42364 0.35815 0.81943 0.5625 1.2188l0.25-0.5c-0.31-0.556-0.582-1.119-0.812-1.719l-20.782-4.344zm66.875 0-20.781 4.344c-0.23062 0.6001-0.50254 1.1631-0.8125 1.7188l0.25 0.5c0.20435-0.39932 0.39969-0.79511 0.5625-1.2188l23.188-4.8438-2.4062-0.5zm-39.999 11.344-9.907 4.906-0.656 1.344 10.563-5.25c0.55561 0.30997 1.1187 0.58188 1.7188 0.8125l4.843 23.188 4.844-23.188c0.6-0.23 1.163-0.502 1.718-0.812l10.563 5.25-0.656-1.344-9.907-4.906c-0.5556 0.30997-1.1187 0.58188-1.7188 0.8125l-4.843 23.194-4.844-23.188c-0.6-0.23-1.163-0.502-1.718-0.812z"
|
||||||
|
display="inline"
|
||||||
|
fill="#fff"
|
||||||
|
id="path105" />
|
||||||
|
<path
|
||||||
|
opacity=".2"
|
||||||
|
display="inline"
|
||||||
|
d="m48 12.031-4.844 23.219c-0.5951 0.2287-1.1674 0.47449-1.7188 0.78125l-10.562-5.281 0.65625 1.3438 9.9062 4.9375c0.552-0.307 1.124-0.552 1.719-0.781l4.844-23.219 4.844 23.219c0.5951 0.2287 1.1674 0.47449 1.7188 0.78125l9.906-4.937 0.656-1.344-10.563 5.281c-0.551-0.307-1.123-0.552-1.718-0.781l-4.844-23.219zm-12.094 29.781c-0.20393 0.40673-0.39751 0.82069-0.5625 1.25l-23.188 4.8438 2.4062 0.5 20.781-4.3438c0.23371-0.60814 0.49736-1.1876 0.8125-1.75l-0.25-0.5zm24.188 0-0.25 0.5c0.31515 0.5624 0.57879 1.1419 0.8125 1.75l20.781 4.3438 2.4062-0.5-23.188-4.8438c-0.16499-0.42931-0.35856-0.84327-0.5625-1.25zm-20.875 6.5938c-0.0093 0.16563-0.03125 0.33206-0.03125 0.5 0 4.8655 3.947 8.8125 8.8125 8.8125s8.8125-3.947 8.8125-8.8125c0-0.16794-0.02197-0.33437-0.03125-0.5-0.25961 4.6329-4.0837 8.3125-8.7812 8.3125-4.6976-0.000002-8.5216-3.6796-8.7812-8.3125zm-3.3125 6.5625-5.031 10.032 0.65625-0.34375 4.625-9.1875c-0.09114-0.16338-0.16488-0.33367-0.25-0.5zm24.188 0c-0.08512 0.16633-0.15886 0.33662-0.25 0.5l4.625 9.1875 0.656 0.344-5.031-10.031z"
|
||||||
|
id="path107" />
|
||||||
|
<g
|
||||||
|
fill-rule="evenodd"
|
||||||
|
id="g109">
|
||||||
|
<path
|
||||||
|
opacity=".05"
|
||||||
|
d="m68.344 11.656a0.80733 0.80733 0 0 0 -0.094 0.032c-0.84331 0.36132-1.3786 1.0483-1.7812 1.6562-0.40265 0.60798-0.71865 1.1678-1.0625 1.5312a0.80733 0.80733 0 0 0 -0.0625 0.09375c-7.4189 10.272-14.948 20.506-22.312 30.812a0.80733 0.80733 0 0 0 -0.09375 0.125c-5.556 12.477-11.163 24.994-16.688 37.469a0.80733 0.80733 0 0 0 -0.03125 0.0625c-0.33362 1.0756 0.3584 2.082 1.1875 2.4688 0.41455 0.19339 0.86107 0.28683 1.3438 0.1875 0.46917-0.09655 0.94963-0.38905 1.25-0.84375 0.0035-0.0053-0.0035-0.02589 0-0.03125h0.03125c8.008-11.094 16.11-22.154 24.063-33.281a0.80733 0.80733 0 0 0 0.09375 -0.125c5.568-12.501 11.169-25.021 16.718-37.532a0.80733 0.80733 0 0 0 0.0625 -0.1875c0.2153-1.4496-1.1068-2.6871-2.5312-2.4375a0.80733 0.80733 0 0 0 -0.09375 0z"
|
||||||
|
id="path111" />
|
||||||
|
<path
|
||||||
|
opacity="0.08"
|
||||||
|
d="m68.562 12.438c-1.2325 0.52808-1.6769 2.0539-2.5725 3.0006-7.422 10.275-14.943 20.511-22.302 30.811-5.556 12.478-11.164 24.966-16.688 37.438-0.41935 1.352 1.5938 2.2908 2.3438 1.0938 8.0188-11.109 16.137-22.179 24.094-33.312 5.5687-12.501 11.171-24.991 16.719-37.5 0.1381-0.92987-0.67669-1.6919-1.5938-1.5312z"
|
||||||
|
id="path113" />
|
||||||
|
<path
|
||||||
|
opacity="0.12"
|
||||||
|
d="m68.781 13.125a0.61863 0.61863 0 0 0 -0.4375 0.25l-23.938 33a0.61863 0.61863 0 0 0 -0.064 0.125l-16.624 37.25a0.61863 0.61863 0 0 0 1.062 0.625l23.938-33.031a0.61863 0.61863 0 0 0 0.063 -0.125l16.623-37.219a0.61863 0.61863 0 0 0 -0.625 -0.875z"
|
||||||
|
id="path115" />
|
||||||
|
<path
|
||||||
|
opacity=".3"
|
||||||
|
d="m68.844 13.75-23.938 33-16.625 37.25 23.938-33.031 16.625-37.219z"
|
||||||
|
id="path117" />
|
||||||
|
<g
|
||||||
|
display="inline"
|
||||||
|
transform="matrix(.73161 .4224 -.4224 .73161 28.777 -25.989)"
|
||||||
|
id="g119">
|
||||||
|
<path
|
||||||
|
fill="url(#p)"
|
||||||
|
d="m69 64h-10l5-48 5 48z"
|
||||||
|
id="path121" />
|
||||||
|
<path
|
||||||
|
fill="url(#q)"
|
||||||
|
d="m69 64h-10l5 48 5-48z"
|
||||||
|
id="path123" />
|
||||||
|
<path
|
||||||
|
fill="url(#s)"
|
||||||
|
d="m65.503 63.921a1.7404 1.7404 0 1 1 -3.4808 0 1.7404 1.7404 0 1 1 3.4808 0z"
|
||||||
|
transform="matrix(1.1491,0,0,1.1491,-9.2727,-9.4546)"
|
||||||
|
id="path125" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
display="none"
|
||||||
|
transform="translate(0,-48)"
|
||||||
|
id="g127">
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
fill="url(#z)"
|
||||||
|
d="m48 21-3.649 17.468c-0.4481 0.1722-0.88465 0.36192-1.2998 0.5929l-7.9358-3.9679 3.9679 7.9358c-0.237 0.423-0.439 0.864-0.615 1.322l-17.468 3.649 17.468 3.649c0.17365 0.45186 0.38232 0.88147 0.61571 1.2998l-3.9679 7.9358 7.9358-3.9679c0.41835 0.2334 0.84797 0.44206 1.2998 0.61571l3.648 17.467 3.649-17.468c0.45186-0.17365 0.88148-0.38231 1.2998-0.61571l7.9358 3.9679-3.9679-7.9358c0.23339-0.41836 0.44206-0.84797 0.61571-1.2998l17.467-3.648-17.468-3.649c-0.176-0.458-0.378-0.899-0.616-1.322l3.9679-7.9358-7.9358 3.9679c-0.415-0.231-0.851-0.421-1.299-0.593l-3.649-17.468zm0 20.364c3.6636 0 6.636 2.9723 6.636 6.636 0 3.6636-2.9723 6.636-6.636 6.636-3.6636-0.000001-6.636-2.9723-6.636-6.636 0-3.6636 2.9723-6.636 6.636-6.636z"
|
||||||
|
id="path129" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
fill="#fff"
|
||||||
|
d="m52.539 10.836c-0.51471 0-1.0474 0.34477-1.6352 1.034-0.27321 0.31859-0.46156 0.63682-0.65076 1.1674-0.1892 0.53062-0.37766 1.2818-0.65075 2.485-0.11127 0.52267-0.22801 1.0506-0.35041 1.5844-0.005 0.02588-0.0651 0.21582-0.10012 0.35023-0.43816-0.90775-0.65409-1.6163-1.7354-5.6538-0.005-0.0062-0.0105-0.01178-0.0167-0.01668-0.004-0.01204-0.009-0.02335-0.0167-0.03335-0.01-0.0076-0.0213-0.01321-0.0334-0.01668-0.006-0.000454-0.0111-0.000454-0.0166 0-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0166 0.01668-0.006 0.0049-0.0118 0.01049-0.0167 0.01668l-0.33372 0.31688c-0.231-0.019-0.396-0.034-0.584-0.034-0.6807 0-1.1184 0.12634-1.5351 0.4503-0.73237 0.57188-1.2348 1.3847-1.2348 2.0514 0 0.29458 0.062 0.61294 0.26698 1.034 0.008 0.01356 0.0198 0.02499 0.0334 0.03335 0.01 0.0076 0.0213 0.0132 0.0334 0.01668 0.006 0.000455 0.0111 0.000455 0.0167 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.006 0.000455 0.0111 0.000455 0.0167 0 0.006-0.0049 0.0118-0.01049 0.0167-0.01668l0.78425-0.51701c0.0136-0.0084 0.025-0.01979 0.0334-0.03335 0.006-0.0049 0.0118-0.0105 0.0167-0.01668 0.00046-0.0056 0.00046-0.01112 0-0.01668 0.002-0.01104 0.002-0.02231 0-0.03335 0.00046-0.0056 0.00046-0.01112 0-0.01668 0.00046-0.0056 0.00046-0.01112 0-0.01668-0.27695-0.58685-0.36709-0.82747-0.36709-1.0841 0-0.29544 0.16844-0.5661 0.45052-0.71715 0.24902-0.13482 0.48857-0.16678 0.98448-0.16678 0.1993 0 0.42923 0.0045 0.73419 0.01668-0.50777 2.1522-0.92214 3.5345-1.2681 4.1528-0.11155 0.19644-0.22511 0.31263-0.3671 0.38359-0.14198 0.07095-0.32928 0.10007-0.61738 0.10007-0.20625 0-0.37279-0.01669-0.68413-0.05004-0.011-0.0019-0.0224-0.0019-0.0334 0-0.006-0.000454-0.0111-0.000454-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01668-0.012 0.0035-0.0234 0.0091-0.0334 0.01668l-0.53396 0.76718c-0.008 0.01-0.0132 0.02131-0.0167 0.03335-0.00044 0.0056-0.00044 0.01112 0 0.01668-0.002 0.01104-0.002 0.02232 0 0.03335-0.00044 0.0056-0.00044 0.01112 0 0.01668 0.005 0.0062 0.0105 0.01178 0.0167 0.01668 0.008 0.01356 0.0198 0.02499 0.0334 0.03335 0.005 0.0062 0.0105 0.01178 0.0167 0.01668 0.011 0.0019 0.0223 0.0019 0.0334 0 0.3009 0.02228 0.45661 0.03335 0.61739 0.03335 0.48681 0 0.80964-0.06052 1.118-0.25017 0.58361-0.34523 1.1562-1.1677 1.5184-2.1181 0.15976-0.42912 0.26739-0.84607 0.61739-2.2515l0.31703 1.3175c0.3238 1.3838 0.60125 2.2192 0.98448 2.9853 0.69073 1.4034 1.7045 2.1014 3.0536 2.1014 0.57933 0 1.0052-0.10388 1.5184-0.40027 0.006 0.000454 0.0111 0.000454 0.0166 0 0.006-0.0049 0.0118-0.0105 0.0167-0.01668 0.01-0.01493 0.0156-0.03218 0.0167-0.05003 0.00045-0.0056 0.00045-0.01112 0-0.01668 0.002-0.01104 0.002-0.02231 0-0.03335l-0.26698-1.0007c-0.005-0.0062-0.0105-0.01178-0.0167-0.01668-0.004-0.01204-0.009-0.02335-0.0166-0.03335-0.01-0.0076-0.0213-0.0132-0.0334-0.01668-0.006-0.000455-0.0111-0.000455-0.0167 0-0.011-0.0019-0.0223-0.0019-0.0334 0-0.006-0.000455-0.0112-0.000455-0.0167 0-0.006 0.0049-0.0118 0.0105-0.0167 0.01668-0.0136 0.0084-0.025 0.01979-0.0334 0.03335-0.006 0.0049-0.0118 0.01049-0.0166 0.01668-0.15516 0.36554-0.23163 0.51088-0.3671 0.66711-0.18374 0.22446-0.423 0.35023-0.66744 0.35023-0.64202 0-1.2642-0.49515-1.8188-1.5344 0.18467-0.93223 0.29241-1.381 0.56733-2.535 0.47849-1.9353 0.7327-2.7102 1.0846-3.4356 0.11224-0.22438 0.2262-0.37593 0.36709-0.46698 0.14089-0.09106 0.30666-0.13342 0.55064-0.13342 0.0829 0 0.13414-0.0047 0.28367 0.01668 0.006 0.000454 0.0111 0.000454 0.0166 0 0.011 0.0019 0.0224 0.0019 0.0334 0 0.0196-0.0058 0.0371-0.01747 0.05-0.03335 0.00045-0.0056 0.00045-0.01112 0-0.01668l0.40047-0.73382c0.006-0.0049 0.0118-0.01049 0.0167-0.01668 0.00045-0.0056 0.00045-0.01113 0-0.01668 0.002-0.01104 0.002-0.02231 0-0.03335 0.00045-0.0056 0.00045-0.01112 0-0.01668-0.005-0.0062-0.0105-0.01178-0.0167-0.01668-0.008-0.01356-0.0198-0.02499-0.0334-0.03335-0.005-0.0062-0.0105-0.01179-0.0166-0.01668-0.006-0.000454-0.0111-0.000454-0.0167 0-0.12709-0.01058-0.24428-0.03335-0.35041-0.03335z"
|
||||||
|
id="path131" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
fill="#fff"
|
||||||
|
d="m9.7581 46.687c0 1.0568 0.50675 2.3673 1.2517 3.2381 0.88544 1.0114 2.291 1.5639 3.8656 1.5639 0.80348 0.000004 1.4439-0.17902 1.8776-0.55195 0.43367-0.37293 0.64426-0.93277 0.64426-1.6375 0-1.1534-0.55029-2.4074-1.4542-3.3485-0.88473-0.90956-2.1828-1.3983-3.6815-1.3983-0.79132 0.000001-1.4088 0.1873-1.8408 0.55195-0.43191 0.36465-0.66267 0.90109-0.66267 1.5823zm0.69949 0.69914c0-0.51699 0.20461-0.90169 0.57063-1.1775s0.90565-0.44156 1.6015-0.44156c0.91206 0.000003 1.9549 0.26384 2.6323 0.64394 0.90605 0.51238 1.4174 1.3068 1.4174 2.171 0 0.53556-0.20621 0.9432-0.58904 1.2327-0.38284 0.2895-0.95465 0.45996-1.6935 0.45996-1.1145 0.000002-2.1105-0.32203-2.8164-0.84633-0.70585-0.5243-1.1229-1.2471-1.1229-2.0422z"
|
||||||
|
id="path133" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
fill="#fff"
|
||||||
|
d="m85.286 48.717-0.25679-0.825v-0.03666c-0.0176-1.1675-0.26703-1.9331-0.82541-2.64-0.50179-0.62692-1.0354-0.935-1.7059-0.935-0.32979 0-0.59183 0.04595-1.0272 0.22-0.007 0.0054-0.013 0.01153-0.0184 0.01833-0.0149 0.0092-0.0275 0.02176-0.0367 0.03666-0.007 0.0054-0.013 0.01153-0.0184 0.01833-0.0005 0.0061-0.0005 0.01223 0 0.01833-0.002 0.01213-0.002 0.02453 0 0.03666-0.0005 0.0061-0.0005 0.01223 0 0.01833 0.006 0.0068 0.0115 0.01295 0.0184 0.01834l0.58696 0.89834c0.009 0.01491 0.0218 0.02747 0.0367 0.03666 0.006 0.0068 0.0115 0.01295 0.0184 0.01833 0.006 0.0005 0.0122 0.0005 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.0005 0.0122 0.0005 0.0184 0 0.38534-0.10832 0.69787-0.165 0.99049-0.165 0.45068 0 0.73004 0.14622 0.93547 0.495 0.19099 0.32426 0.29612 0.86204 0.33017 1.595l-2.5863-0.64167h-0.0184c-0.17301-0.16984-0.25483-0.26966-0.47691-0.45834-0.006-0.0005-0.0122-0.0005-0.0184 0-0.006-0.0068-0.0115-0.01295-0.0184-0.01833-0.006-0.000498-0.0122-0.000498-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.000498-0.0122-0.000498-0.0184 0-0.007 0.0054-0.013 0.01154-0.0184 0.01833-0.0149 0.0092-0.0275 0.02175-0.0367 0.03666-0.007 0.0054-0.013 0.01153-0.0184 0.01833-0.002 0.01213-0.002 0.02453 0 0.03666v0.18333c-0.12235-0.02937-0.25254-0.05969-0.34851-0.09166-0.006-0.000499-0.0122-0.000499-0.0184 0-0.94131-0.23216-1.4542-0.39035-1.7425-0.58667-0.28836-0.19632-0.37422-0.42071-0.49525-0.91667-0.001-0.01962-0.008-0.03859-0.0184-0.055l-0.40354-0.47667c-0.011-0.0083-0.0234-0.01452-0.0367-0.01833-0.006-0.0068-0.0115-0.01295-0.0184-0.01834-0.0122-0.002-0.0246-0.002-0.0367 0-0.006-0.0005-0.0122-0.0005-0.0184 0-0.0196 0.0012-0.0386 0.0075-0.055 0.01834-0.007 0.0054-0.0129 0.01153-0.0184 0.01833-0.0108 0.01641-0.0171 0.03538-0.0184 0.055-0.0005 0.0061-0.0005 0.01223 0 0.01833-0.0122 0.3434-0.0184 0.60568-0.0184 0.69667l-0.0184 1.1c0 0.36587-0.006 0.69233-0.0184 0.97167-0.049 1.4804-0.055 1.4896-0.055 2.0167 0 0.32317 0.0172 0.54056 0.11006 0.75167 0.0929 0.21111 0.24252 0.40109 0.49524 0.67834 0.2538 0.28461 0.45736 0.49269 0.64199 0.62334 0.18463 0.13064 0.36355 0.18333 0.53193 0.18333 0.0611 0.000001 0.1746 0.0045 0.31183-0.03666 0.007-0.0054 0.013-0.01153 0.0184-0.01834 0.0149-0.0092 0.0275-0.02175 0.0367-0.03666 0.007-0.0054 0.0129-0.01154 0.0184-0.01833 0.002-0.01213 0.002-0.02453 0-0.03666 0.0005-0.0061 0.0005-0.01223 0-0.01834 0.0005-0.0061 0.0005-0.01223 0-0.01833l-0.348-0.934c-0.006-0.0216-0.0192-0.04076-0.0367-0.055-0.011-0.0083-0.0234-0.01452-0.0367-0.01833-0.006-0.000499-0.0122-0.000499-0.0184 0-0.0122-0.002-0.0246-0.002-0.0367 0-0.25859 0.03693-0.34248 0.055-0.44022 0.055-0.10971 0-0.19217-0.01491-0.23845-0.03666-0.0463-0.02175-0.0617-0.05312-0.0917-0.12833-0.0599-0.15041-0.0917-0.47808-0.0917-1.0633v-2.915c0.86732 0.93479 1.0966 1.0788 2.568 1.4667 0.0297 0.48382 0.0512 0.65095 0.0734 0.91667 0.0122 0.26876 0.0184 0.4278 0.0184 0.495-0.0005 0.0061-0.0005 0.01223 0 0.01834-0.00071-0.0033-0.001 0.05238 0 0.11 0.001 0.05761 0.0119 0.1422 0.0184 0.22-0.0005 0.0061-0.0005 0.01223 0 0.01834 0.006 0.0068 0.0115 0.01295 0.0184 0.01833-0.0005 0.0061-0.0005 0.01223 0 0.01834 0.1605 0.22211 0.19651 0.25777 0.36685 0.47667 0.006 0.0068 0.0115 0.01295 0.0184 0.01834 0.011 0.0083 0.0234 0.01452 0.0367 0.01833 0.006 0.000499 0.0122 0.000499 0.0184 0 0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.007-0.0054 0.013-0.01153 0.0184-0.01833 0.0149-0.0092 0.0275-0.02175 0.0367-0.03666 0.007-0.0054 0.013-0.01153 0.0184-0.01834 0.002-0.01213 0.002-0.02453 0-0.03666v-2.0533l2.5496 0.64167v0.29334c0.0244 0.51307 0.0367 0.9107 0.0367 0.97167 0 0.2315-0.012 0.32362-0.11007 0.42167-0.0981 0.09805-0.3133 0.20228-0.71535 0.36667-0.007 0.0054-0.0129 0.01153-0.0184 0.01833-0.0149 0.0092-0.0275 0.02176-0.0367 0.03666-0.007 0.0054-0.0129 0.01153-0.0184 0.01833-0.0005 0.0061-0.0005 0.01223 0 0.01834-0.002 0.01213-0.002 0.02453 0 0.03666-0.0005 0.0061-0.0005 0.01223 0 0.01833 0.004 0.01324 0.01 0.02567 0.0184 0.03666 0.006 0.000498 0.0122 0.000498 0.0184 0l0.82541 0.80667c0.006 0.0068 0.0115 0.01295 0.0184 0.01834 0.006 0.0068 0.0115 0.01295 0.0184 0.01833 0.0121 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.14624-0.01993 0.27031-0.05692 0.36685-0.12833 0.0965-0.07141 0.15984-0.1746 0.20177-0.29333 0.0005-0.0061 0.0005-0.01223 0-0.01833 0.0005-0.0061 0.0005-0.01223 0-0.01833l-0.055-2.475 0.11006 0.03666c0.0122 0.002 0.0246 0.002 0.0367 0 0.006 0.000499 0.0122 0.000499 0.0184 0 0.0196-0.0012 0.0386-0.0075 0.055-0.01834 0.0174-0.01424 0.0303-0.0334 0.0367-0.055 0.002-0.01214 0.002-0.02453 0-0.03666 0.002-0.01213 0.002-0.02453 0-0.03666z"
|
||||||
|
id="path135" />
|
||||||
|
<path
|
||||||
|
display="inline"
|
||||||
|
fill="#fff"
|
||||||
|
d="m46.116 85.265c0.60791 0 1.2438-0.33 1.7259-0.79615 0.48208-0.46616 0.81315-1.0705 0.81315-1.6587 0-0.26522-0.0665-0.49939-0.21574-0.72981-0.14925-0.23042-0.37107-0.46049-0.69698-0.71322-0.37336-0.29634-0.59841-0.51502-0.73017-0.71323-0.13177-0.1982-0.18255-0.37189-0.18255-0.6137 0-0.79851 0.78269-1.526 1.6927-1.526 0.44798 0 0.90233 0.19119 1.1782 0.49759 0.22059 0.24148 0.31089 0.44842 0.39828 0.92885-0.00045 0.0057-0.00045 0.01109 0 0.01658 0.005 0.0064 0.0105 0.01174 0.0166 0.01658 0.008 0.01352 0.0197 0.02483 0.0332 0.03315 0.005 0.0064 0.0105 0.01174 0.0166 0.01658 0.006 0.000454 0.011 0.000454 0.0166 0 0.011 0.0021 0.0222 0.0021 0.0332 0 0.006 0.000454 0.0111 0.000454 0.0166 0 0.012-0.0036 0.0232-0.009 0.0332-0.01658l0.16595-0.1161c0.008-0.01 0.0132-0.0212 0.0166-0.03315 0.006-0.005 0.0117-0.01045 0.0166-0.01658l0.49784-1.1611c0.00046-0.0057 0.00046-0.0111 0-0.01658 0.002-0.01095 0.002-0.0222 0-0.03315 0.00046-0.0057 0.00046-0.0111 0-0.01658-0.005-0.0064-0.0105-0.01173-0.0166-0.01658 0.00045-0.0057 0.00045-0.01111 0-0.01658-0.4046-0.54305-0.96642-0.79615-1.7093-0.79615-0.87534 0-1.7421 0.35632-2.3896 0.89567-0.64755 0.53936-1.0787 1.2636-1.0787 2.007 0 0.2401 0.058 0.43708 0.21573 0.64688 0.1578 0.20979 0.40143 0.44045 0.81315 0.76298 0.40266 0.31425 0.64021 0.51174 0.76337 0.68006 0.12315 0.16831 0.14935 0.30252 0.14935 0.53077 0 0.66864-0.50655 1.244-1.0953 1.244-0.21774 0-0.32277-0.03593-0.41487-0.14928-0.0921-0.11338-0.17238-0.33148-0.23232-0.68005 0.00044-0.0057 0.00044-0.0111 0-0.01658-0.005-0.0064-0.0105-0.01174-0.0166-0.01658-0.008-0.01352-0.0197-0.02483-0.0332-0.03315-0.005-0.0064-0.0105-0.01174-0.0166-0.01658-0.006-0.000447-0.0111-0.000447-0.0166 0-0.011-0.0021-0.0222-0.0021-0.0332 0-0.006-0.000447-0.0111-0.000447-0.0166 0-0.006 0.005-0.0117 0.01045-0.0166 0.01658-0.006-0.000456-0.011-0.000456-0.0166 0l-0.73017 0.51418c-0.0158 0.01287-0.0273 0.03024-0.0332 0.04974-0.002 0.01095-0.002 0.0222 0 0.03315-0.00046 0.0057-0.00046 0.01111 0 0.01658 0.0349 0.32045 0.14653 0.57369 0.3319 0.7464 0.18535 0.1727 0.43569 0.24879 0.74676 0.24879z"
|
||||||
|
id="path137" />
|
||||||
|
<g
|
||||||
|
fill-rule="evenodd"
|
||||||
|
display="inline"
|
||||||
|
transform="matrix(.91204 0 0 .91204 3.7045 4.3714)"
|
||||||
|
id="g139">
|
||||||
|
<path
|
||||||
|
opacity=".05"
|
||||||
|
d="m68.344 11.656a0.80733 0.80733 0 0 0 -0.094 0.032c-0.84331 0.36132-1.3786 1.0483-1.7812 1.6562-0.40265 0.60798-0.71865 1.1678-1.0625 1.5312a0.80733 0.80733 0 0 0 -0.0625 0.09375c-7.4189 10.272-14.948 20.506-22.312 30.812a0.80733 0.80733 0 0 0 -0.09375 0.125c-5.556 12.477-11.163 24.994-16.688 37.469a0.80733 0.80733 0 0 0 -0.03125 0.0625c-0.33362 1.0756 0.3584 2.082 1.1875 2.4688 0.41455 0.19339 0.86107 0.28683 1.3438 0.1875 0.46917-0.09655 0.94963-0.38905 1.25-0.84375 0.0035-0.0053-0.0035-0.02589 0-0.03125h0.03125c8.008-11.094 16.11-22.154 24.063-33.281a0.80733 0.80733 0 0 0 0.09375 -0.125c5.568-12.501 11.169-25.021 16.718-37.532a0.80733 0.80733 0 0 0 0.0625 -0.1875c0.2153-1.4496-1.1068-2.6871-2.5312-2.4375a0.80733 0.80733 0 0 0 -0.09375 0z"
|
||||||
|
id="path141" />
|
||||||
|
<path
|
||||||
|
opacity="0.08"
|
||||||
|
d="m68.562 12.438c-1.2325 0.52808-1.6769 2.0539-2.5725 3.0006-7.422 10.275-14.943 20.511-22.302 30.811-5.556 12.478-11.164 24.966-16.688 37.438-0.41935 1.352 1.5938 2.2908 2.3438 1.0938 8.0188-11.109 16.137-22.179 24.094-33.312 5.5687-12.501 11.171-24.991 16.719-37.5 0.1381-0.92987-0.67669-1.6919-1.5938-1.5312z"
|
||||||
|
id="path143" />
|
||||||
|
<path
|
||||||
|
opacity="0.12"
|
||||||
|
d="m68.781 13.125a0.61863 0.61863 0 0 0 -0.4375 0.25l-23.938 33a0.61863 0.61863 0 0 0 -0.064 0.125l-16.624 37.25a0.61863 0.61863 0 0 0 1.062 0.625l23.938-33.031a0.61863 0.61863 0 0 0 0.063 -0.125l16.623-37.219a0.61863 0.61863 0 0 0 -0.625 -0.875z"
|
||||||
|
id="path145" />
|
||||||
|
<path
|
||||||
|
opacity=".3"
|
||||||
|
d="m68.844 13.75-23.938 33-16.625 37.25 23.938-33.031 16.625-37.219z"
|
||||||
|
id="path147" />
|
||||||
|
<g
|
||||||
|
display="inline"
|
||||||
|
transform="matrix(.73161 .4224 -.4224 .73161 28.777 -25.989)"
|
||||||
|
id="g149">
|
||||||
|
<path
|
||||||
|
fill="url(#p)"
|
||||||
|
d="m69 64h-10l5-48 5 48z"
|
||||||
|
id="path151" />
|
||||||
|
<path
|
||||||
|
fill="url(#q)"
|
||||||
|
d="m69 64h-10l5 48 5-48z"
|
||||||
|
id="path153" />
|
||||||
|
<path
|
||||||
|
fill="url(#s)"
|
||||||
|
d="m65.503 63.921a1.7404 1.7404 0 1 1 -3.4808 0 1.7404 1.7404 0 1 1 3.4808 0z"
|
||||||
|
transform="matrix(1.1491,0,0,1.1491,-9.2727,-9.4546)"
|
||||||
|
id="path155" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<path
|
||||||
|
style="color:#000000"
|
||||||
|
d="m24.228-1.5544-3.7368 13.404c-1.414 0.42483-2.7246 1.0848-3.8883 1.9328l-6.0849-3.2632 3.2823 6.0495c-0.85302 1.1569-1.5168 2.4599-1.9442 3.8656l-13.483 3.715 13.483 3.715c0.42732 1.4058 1.0911 2.7087 1.9442 3.8656l-3.2823 6.0495 6.0849-3.2632c1.1637 0.84806 2.4743 1.508 3.8883 1.9328l3.7368 13.404 3.7368-13.404c1.414-0.42484 2.7246-1.0848 3.8883-1.9328l6.0849 3.2632-3.2823-6.0495c0.85303-1.1569 1.5168-2.4599 1.9442-3.8656l13.482-3.715-13.482-3.715c-0.42733-1.4058-1.0911-2.7087-1.9442-3.8656l3.2823-6.0495-6.0849 3.2632c-1.164-0.848-2.474-1.508-3.888-1.933l-3.737-13.404zm0 16.065c5.3547 0 9.6955 4.3155 9.6955 9.639s-4.3408 9.639-9.6955 9.639-9.6955-4.3155-9.6955-9.639 4.3408-9.639 9.6955-9.639z"
|
||||||
|
id="path157" />
|
||||||
|
<g
|
||||||
|
fill-rule="evenodd"
|
||||||
|
transform="matrix(1.4998 .3644 .44595 1.4029 -22.946 -18.687)"
|
||||||
|
id="g169">
|
||||||
|
<path
|
||||||
|
opacity=".3"
|
||||||
|
d="m39.723 8.5147-17.615 13.613-13.457 17.818 17.615-13.613 13.457-17.818z"
|
||||||
|
id="path171" />
|
||||||
|
<path
|
||||||
|
fill="url(#n)"
|
||||||
|
d="m26.265 25.731-4.157-4.206 17.612-13.61-13.455 17.816z"
|
||||||
|
id="path173" />
|
||||||
|
<path
|
||||||
|
fill="url(#o)"
|
||||||
|
d="m26.265 25.731-4.157-4.206-13.454 17.816 17.611-13.61z"
|
||||||
|
id="path175" />
|
||||||
|
<path
|
||||||
|
fill="url(#r)"
|
||||||
|
d="m24.834 24.283a0.91535 0.92595 0 0 1 -1.294 -1.31 0.91535 0.92595 0 1 1 1.294 1.31z"
|
||||||
|
id="path177" />
|
||||||
</g>
|
</g>
|
||||||
</g>
|
|
||||||
<path style="color:#000000" d="m24.228-1.5544-3.7368 13.404c-1.414 0.42483-2.7246 1.0848-3.8883 1.9328l-6.0849-3.2632 3.2823 6.0495c-0.85302 1.1569-1.5168 2.4599-1.9442 3.8656l-13.483 3.715 13.483 3.715c0.42732 1.4058 1.0911 2.7087 1.9442 3.8656l-3.2823 6.0495 6.0849-3.2632c1.1637 0.84806 2.4743 1.508 3.8883 1.9328l3.7368 13.404 3.7368-13.404c1.414-0.42484 2.7246-1.0848 3.8883-1.9328l6.0849 3.2632-3.2823-6.0495c0.85303-1.1569 1.5168-2.4599 1.9442-3.8656l13.482-3.715-13.482-3.715c-0.42733-1.4058-1.0911-2.7087-1.9442-3.8656l3.2823-6.0495-6.0849 3.2632c-1.164-0.848-2.474-1.508-3.888-1.933l-3.737-13.404zm0 16.065c5.3547 0 9.6955 4.3155 9.6955 9.639s-4.3408 9.639-9.6955 9.639-9.6955-4.3155-9.6955-9.639 4.3408-9.639 9.6955-9.639z"/>
|
|
||||||
<g fill-rule="evenodd" transform="matrix(1.3198 -.80014 1.306 .67938 -79.113 27.625)">
|
|
||||||
<path opacity=".3" d="m39.723 8.5147-17.615 13.613-13.457 17.818 17.615-13.613 13.457-17.818z"/>
|
|
||||||
<path fill="url(#n)" d="m26.265 25.731-4.157-4.206 17.612-13.61-13.455 17.816z"/>
|
|
||||||
<path fill="url(#o)" d="m26.265 25.731-4.157-4.206-13.454 17.816 17.611-13.61z"/>
|
|
||||||
<path fill="url(#r)" d="m24.834 24.283a0.91535 0.92595 0 0 1 -1.294 -1.31 0.91535 0.92595 0 1 1 1.294 1.31z"/>
|
|
||||||
</g>
|
|
||||||
<g fill-rule="evenodd" transform="matrix(1.4998 .3644 .44595 1.4029 -22.946 -18.687)">
|
|
||||||
<path opacity=".3" d="m39.723 8.5147-17.615 13.613-13.457 17.818 17.615-13.613 13.457-17.818z"/>
|
|
||||||
<path fill="url(#n)" d="m26.265 25.731-4.157-4.206 17.612-13.61-13.455 17.816z"/>
|
|
||||||
<path fill="url(#o)" d="m26.265 25.731-4.157-4.206-13.454 17.816 17.611-13.61z"/>
|
|
||||||
<path fill="url(#r)" d="m24.834 24.283a0.91535 0.92595 0 0 1 -1.294 -1.31 0.91535 0.92595 0 1 1 1.294 1.31z"/>
|
|
||||||
</g>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 46 KiB |
|
@ -24,7 +24,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file drawframe.cpp
|
* @file draw_frame.cpp
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <fctsys.h>
|
#include <fctsys.h>
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file drawpanel.cpp
|
* @file draw_panel.cpp
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <fctsys.h>
|
#include <fctsys.h>
|
||||||
|
|
|
@ -80,7 +80,9 @@ static void setSearchPaths( SEARCH_STACK* aDst, KIWAY::FACE_T aId )
|
||||||
aDst->AddPaths( fn.GetPath() );
|
aDst->AddPaths( fn.GetPath() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef __WXMAC__
|
||||||
aDst->AddPaths( wxT( "/usr/local/share" ) );
|
aDst->AddPaths( wxT( "/usr/local/share" ) );
|
||||||
|
#endif
|
||||||
|
|
||||||
#if 1 && defined(DEBUG)
|
#if 1 && defined(DEBUG)
|
||||||
aDst->Show( "kiface" );
|
aDst->Show( "kiface" );
|
||||||
|
|
|
@ -114,6 +114,11 @@ const wxString KIWAY::dso_full_path( FACE_T aFaceId )
|
||||||
}
|
}
|
||||||
|
|
||||||
wxFileName fn = wxStandardPaths::Get().GetExecutablePath();
|
wxFileName fn = wxStandardPaths::Get().GetExecutablePath();
|
||||||
|
#ifdef __WXMAC__
|
||||||
|
// we have the dso's in @executable_path/../Plugins in OSX bundle
|
||||||
|
fn.RemoveLastDir();
|
||||||
|
fn.AppendDir( wxT( "Plugins" ) );
|
||||||
|
#endif
|
||||||
|
|
||||||
fn.SetName( name );
|
fn.SetName( name );
|
||||||
|
|
||||||
|
|
|
@ -26,10 +26,12 @@ void SystemDirsAppend( SEARCH_STACK* aSearchStack )
|
||||||
// Otherwise don't set it.
|
// Otherwise don't set it.
|
||||||
maybe.AddPaths( wxGetenv( wxT( "KICAD" ) ) );
|
maybe.AddPaths( wxGetenv( wxT( "KICAD" ) ) );
|
||||||
|
|
||||||
|
#ifndef __WXMAC__
|
||||||
// This is from CMAKE_INSTALL_PREFIX.
|
// This is from CMAKE_INSTALL_PREFIX.
|
||||||
// Useful when KiCad is installed by `make install`.
|
// Useful when KiCad is installed by `make install`.
|
||||||
// Use as second ranked place.
|
// Use as second ranked place.
|
||||||
maybe.AddPaths( wxT( DEFAULT_INSTALL_PATH ) );
|
maybe.AddPaths( wxT( DEFAULT_INSTALL_PATH ) );
|
||||||
|
#endif
|
||||||
|
|
||||||
// Add the directory for the user-dependent, program specific, data files:
|
// Add the directory for the user-dependent, program specific, data files:
|
||||||
// Unix: ~/.appname
|
// Unix: ~/.appname
|
||||||
|
@ -37,6 +39,17 @@ void SystemDirsAppend( SEARCH_STACK* aSearchStack )
|
||||||
// Mac: ~/Library/Application Support/appname
|
// Mac: ~/Library/Application Support/appname
|
||||||
maybe.AddPaths( wxStandardPaths::Get().GetUserDataDir() );
|
maybe.AddPaths( wxStandardPaths::Get().GetUserDataDir() );
|
||||||
|
|
||||||
|
#ifdef __WXMAC__
|
||||||
|
// global machine specific application data
|
||||||
|
maybe.AddPaths( wxT( "/Library/Application Support/kicad" ) );
|
||||||
|
|
||||||
|
// Dir of the global (not user-specific), application specific, data files.
|
||||||
|
// From wx docs:
|
||||||
|
// Unix: prefix/share/appname
|
||||||
|
// Windows: the directory where the executable file is located
|
||||||
|
// Mac: appname.app/Contents/SharedSupport bundle subdirectory
|
||||||
|
maybe.AddPaths( wxStandardPaths::Get().GetDataDir() );
|
||||||
|
#else
|
||||||
{
|
{
|
||||||
// Should be full path to this program executable.
|
// Should be full path to this program executable.
|
||||||
wxString bin_dir = Pgm().GetExecutablePath();
|
wxString bin_dir = Pgm().GetExecutablePath();
|
||||||
|
@ -77,12 +90,10 @@ void SystemDirsAppend( SEARCH_STACK* aSearchStack )
|
||||||
*/
|
*/
|
||||||
#if defined(__MINGW32__)
|
#if defined(__MINGW32__)
|
||||||
maybe.AddPaths( wxGetenv( wxT( "PROGRAMFILES" ) ) );
|
maybe.AddPaths( wxGetenv( wxT( "PROGRAMFILES" ) ) );
|
||||||
#elif __WXMAC__
|
|
||||||
maybe.AddPaths( wxString( wxGetenv( wxT( "HOME" ) ) ) + wxT( "/Library/Application Support" ) );
|
|
||||||
maybe.AddPaths( wxT( "/Library/Application Support" ) );
|
|
||||||
#else
|
#else
|
||||||
maybe.AddPaths( wxGetenv( wxT( "PATH" ) ) );
|
maybe.AddPaths( wxGetenv( wxT( "PATH" ) ) );
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(DEBUG) && 0
|
#if defined(DEBUG) && 0
|
||||||
maybe.Show( "maybe wish list" );
|
maybe.Show( "maybe wish list" );
|
||||||
|
@ -96,6 +107,7 @@ void SystemDirsAppend( SEARCH_STACK* aSearchStack )
|
||||||
{
|
{
|
||||||
wxFileName fn( maybe[i], wxEmptyString );
|
wxFileName fn( maybe[i], wxEmptyString );
|
||||||
|
|
||||||
|
#ifndef __WXMAC__
|
||||||
if( fn.GetPath().AfterLast( fn.GetPathSeparator() ) == wxT( "bin" ) )
|
if( fn.GetPath().AfterLast( fn.GetPathSeparator() ) == wxT( "bin" ) )
|
||||||
{
|
{
|
||||||
fn.RemoveLastDir();
|
fn.RemoveLastDir();
|
||||||
|
@ -103,9 +115,11 @@ void SystemDirsAppend( SEARCH_STACK* aSearchStack )
|
||||||
if( !fn.GetDirCount() )
|
if( !fn.GetDirCount() )
|
||||||
continue; // at least on linux
|
continue; // at least on linux
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
aSearchStack->AddPaths( fn.GetPath() );
|
aSearchStack->AddPaths( fn.GetPath() );
|
||||||
|
|
||||||
|
#ifndef __WXMAC__
|
||||||
fn.AppendDir( wxT( "kicad" ) );
|
fn.AppendDir( wxT( "kicad" ) );
|
||||||
aSearchStack->AddPaths( fn.GetPath() ); // add maybe[i]/kicad
|
aSearchStack->AddPaths( fn.GetPath() ); // add maybe[i]/kicad
|
||||||
|
|
||||||
|
@ -120,6 +134,7 @@ void SystemDirsAppend( SEARCH_STACK* aSearchStack )
|
||||||
|
|
||||||
fn.AppendDir( wxT( "kicad" ) );
|
fn.AppendDir( wxT( "kicad" ) );
|
||||||
aSearchStack->AddPaths( fn.GetPath() ); // add maybe[i]/share/kicad
|
aSearchStack->AddPaths( fn.GetPath() ); // add maybe[i]/share/kicad
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(DEBUG) && 0
|
#if defined(DEBUG) && 0
|
||||||
|
@ -127,4 +142,3 @@ void SystemDirsAppend( SEARCH_STACK* aSearchStack )
|
||||||
aSearchStack->Show( __func__ );
|
aSearchStack->Show( __func__ );
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -53,24 +53,8 @@ if( MINGW )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set( CVPCB_RESOURCES cvpcb.icns cvpcb_doc.icns )
|
|
||||||
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/cvpcb.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/cvpcb_doc.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
|
|
||||||
set( MACOSX_BUNDLE_ICON_FILE cvpcb.icns )
|
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-eda.cvpcb )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
if( USE_KIWAY_DLLS )
|
if( USE_KIWAY_DLLS )
|
||||||
add_executable( cvpcb WIN32 MACOSX_BUNDLE
|
add_executable( cvpcb WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
../common/pgm_base.cpp
|
../common/pgm_base.cpp
|
||||||
${CVPCB_RESOURCES}
|
${CVPCB_RESOURCES}
|
||||||
|
@ -156,16 +140,19 @@ if( USE_KIWAY_DLLS )
|
||||||
add_dependencies( cvpcb cvpcb_kiface )
|
add_dependencies( cvpcb cvpcb_kiface )
|
||||||
|
|
||||||
# these 2 binaries are a matched set, keep them together:
|
# these 2 binaries are a matched set, keep them together:
|
||||||
install( TARGETS cvpcb
|
|
||||||
DESTINATION ${KICAD_BIN}
|
|
||||||
COMPONENT binary
|
|
||||||
)
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# puts the *.kiface into the *.app bundle while linking
|
# puts binaries into the *.app bundle while linking
|
||||||
|
set_target_properties( cvpcb PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
set_target_properties( cvpcb_kiface PROPERTIES
|
set_target_properties( cvpcb_kiface PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/cvpcb.app/Contents/MacOS/
|
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
|
install( TARGETS cvpcb
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
install( TARGETS cvpcb_kiface
|
install( TARGETS cvpcb_kiface
|
||||||
DESTINATION ${KICAD_BIN}
|
DESTINATION ${KICAD_BIN}
|
||||||
COMPONENT binary
|
COMPONENT binary
|
||||||
|
@ -174,7 +161,7 @@ if( USE_KIWAY_DLLS )
|
||||||
|
|
||||||
else()
|
else()
|
||||||
|
|
||||||
add_executable( cvpcb WIN32 MACOSX_BUNDLE
|
add_executable( cvpcb WIN32
|
||||||
${CVPCB_SRCS}
|
${CVPCB_SRCS}
|
||||||
${CVPCB_DIALOGS}
|
${CVPCB_DIALOGS}
|
||||||
${CVPCB_RESOURCES}
|
${CVPCB_RESOURCES}
|
||||||
|
@ -214,15 +201,15 @@ else()
|
||||||
# Must follow github_plugin
|
# Must follow github_plugin
|
||||||
target_link_libraries( cvpcb ${Boost_LIBRARIES} )
|
target_link_libraries( cvpcb ${Boost_LIBRARIES} )
|
||||||
|
|
||||||
install( TARGETS cvpcb
|
if( APPLE )
|
||||||
DESTINATION ${KICAD_BIN}
|
# puts binaries into the *.app bundle while linking
|
||||||
COMPONENT binary
|
set_target_properties( cvpcb PROPERTIES
|
||||||
)
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
endif()
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS cvpcb
|
||||||
if( APPLE )
|
DESTINATION ${KICAD_BIN}
|
||||||
set_target_properties( cvpcb PROPERTIES
|
COMPONENT binary
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
)
|
||||||
)
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -187,22 +187,6 @@ if( MINGW )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set( EESCHEMA_RESOURCES eeschema.icns eeschema_doc.icns )
|
|
||||||
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/eeschema.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/eeschema_doc.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
|
|
||||||
set( MACOSX_BUNDLE_ICON_FILE eeschema.icns )
|
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-eda.eeschema )
|
|
||||||
set( MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
# auto-generate cmp_library_lexer.h and cmp_library_keywords.cpp for the component
|
# auto-generate cmp_library_lexer.h and cmp_library_keywords.cpp for the component
|
||||||
# library format.
|
# library format.
|
||||||
make_lexer(
|
make_lexer(
|
||||||
|
@ -251,7 +235,7 @@ set_source_files_properties( dialogs/dialog_bom.cpp
|
||||||
|
|
||||||
|
|
||||||
if( USE_KIWAY_DLLS )
|
if( USE_KIWAY_DLLS )
|
||||||
add_executable( eeschema WIN32 MACOSX_BUNDLE
|
add_executable( eeschema WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
../common/pgm_base.cpp
|
../common/pgm_base.cpp
|
||||||
${EESCHEMA_RESOURCES}
|
${EESCHEMA_RESOURCES}
|
||||||
|
@ -296,12 +280,6 @@ if( USE_KIWAY_DLLS )
|
||||||
# if building eeschema, then also build eeschema_kiface if out of date.
|
# if building eeschema, then also build eeschema_kiface if out of date.
|
||||||
add_dependencies( eeschema eeschema_kiface )
|
add_dependencies( eeschema eeschema_kiface )
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set_target_properties( eeschema PROPERTIES
|
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if( MAKE_LINK_MAPS )
|
if( MAKE_LINK_MAPS )
|
||||||
# generate link map with cross reference
|
# generate link map with cross reference
|
||||||
set_target_properties( eeschema_kiface PROPERTIES
|
set_target_properties( eeschema_kiface PROPERTIES
|
||||||
|
@ -313,16 +291,19 @@ if( USE_KIWAY_DLLS )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# these 2 binaries are a matched set, keep them together:
|
# these 2 binaries are a matched set, keep them together:
|
||||||
install( TARGETS eeschema
|
|
||||||
DESTINATION ${KICAD_BIN}
|
|
||||||
COMPONENT binary
|
|
||||||
)
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# puts the *.kiface into the *.app bundle while linking
|
# puts binaries into the *.app bundle while linking
|
||||||
|
set_target_properties( eeschema PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
set_target_properties( eeschema_kiface PROPERTIES
|
set_target_properties( eeschema_kiface PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/eeschema.app/Contents/MacOS/
|
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
|
install( TARGETS eeschema
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
install( TARGETS eeschema_kiface
|
install( TARGETS eeschema_kiface
|
||||||
# actual filename subject to change at milestone C)
|
# actual filename subject to change at milestone C)
|
||||||
# modular-kicad blueprint.
|
# modular-kicad blueprint.
|
||||||
|
@ -332,7 +313,7 @@ if( USE_KIWAY_DLLS )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
else()
|
else()
|
||||||
add_executable( eeschema WIN32 MACOSX_BUNDLE
|
add_executable( eeschema WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
${EESCHEMA_SRCS}
|
${EESCHEMA_SRCS}
|
||||||
${EESCHEMA_COMMON_SRCS}
|
${EESCHEMA_COMMON_SRCS}
|
||||||
|
@ -353,16 +334,17 @@ else()
|
||||||
)
|
)
|
||||||
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
|
# puts binaries into the *.app bundle while linking
|
||||||
set_target_properties( eeschema PROPERTIES
|
set_target_properties( eeschema PROPERTIES
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS eeschema
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
install( TARGETS eeschema
|
|
||||||
DESTINATION ${KICAD_BIN}
|
|
||||||
COMPONENT binary
|
|
||||||
)
|
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -208,6 +208,9 @@ SCH_COMPONENT* SCH_EDIT_FRAME::Load_Component( wxDC* aDC,
|
||||||
// alias exists because its root component was found
|
// alias exists because its root component was found
|
||||||
component->SetPartName( name );
|
component->SetPartName( name );
|
||||||
|
|
||||||
|
// Be sure the link to the corresponding LIB_PART is OK:
|
||||||
|
component->Resolve( Prj().SchLibs() );
|
||||||
|
|
||||||
// Set the component value that can differ from component name in lib, for aliases
|
// Set the component value that can differ from component name in lib, for aliases
|
||||||
component->GetField( VALUE )->SetText( name );
|
component->GetField( VALUE )->SetText( name );
|
||||||
|
|
||||||
|
|
|
@ -79,22 +79,9 @@ if( MINGW )
|
||||||
mingw_resource_compiler( gerbview )
|
mingw_resource_compiler( gerbview )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set( GERBVIEW_RESOURCES gerbview.icns gerbview_doc.icns )
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/gerbview.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/gerbview_doc.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set( MACOSX_BUNDLE_ICON_FILE gerbview.icns )
|
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-eda.gerbview )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if( USE_KIWAY_DLLS )
|
if( USE_KIWAY_DLLS )
|
||||||
|
|
||||||
add_executable( gerbview WIN32 MACOSX_BUNDLE
|
add_executable( gerbview WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
../common/pgm_base.cpp
|
../common/pgm_base.cpp
|
||||||
${GERBVIEW_RESOURCES}
|
${GERBVIEW_RESOURCES}
|
||||||
|
@ -147,16 +134,19 @@ if( USE_KIWAY_DLLS )
|
||||||
add_dependencies( gerbview gerbview_kiface )
|
add_dependencies( gerbview gerbview_kiface )
|
||||||
|
|
||||||
# these 2 binaries are a matched set, keep them together
|
# these 2 binaries are a matched set, keep them together
|
||||||
install( TARGETS gerbview
|
|
||||||
DESTINATION ${KICAD_BIN}
|
|
||||||
COMPONENT binary
|
|
||||||
)
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# puts the *.kiface into the *.app bundle while linking
|
# puts binaries into the *.app bundle while linking
|
||||||
|
set_target_properties( gerbview PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
set_target_properties( gerbview_kiface PROPERTIES
|
set_target_properties( gerbview_kiface PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/gerbview.app/Contents/MacOS/
|
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
|
install( TARGETS gerbview
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
install( TARGETS gerbview_kiface
|
install( TARGETS gerbview_kiface
|
||||||
DESTINATION ${KICAD_BIN}
|
DESTINATION ${KICAD_BIN}
|
||||||
COMPONENT binary
|
COMPONENT binary
|
||||||
|
@ -165,7 +155,7 @@ if( USE_KIWAY_DLLS )
|
||||||
|
|
||||||
else()
|
else()
|
||||||
|
|
||||||
add_executable( gerbview WIN32 MACOSX_BUNDLE
|
add_executable( gerbview WIN32
|
||||||
gerbview.cpp
|
gerbview.cpp
|
||||||
${GERBVIEW_SRCS}
|
${GERBVIEW_SRCS}
|
||||||
${DIALOGS_SRCS}
|
${DIALOGS_SRCS}
|
||||||
|
@ -180,14 +170,16 @@ else()
|
||||||
${wxWidgets_LIBRARIES}
|
${wxWidgets_LIBRARIES}
|
||||||
${GDI_PLUS_LIBRARIES}
|
${GDI_PLUS_LIBRARIES}
|
||||||
)
|
)
|
||||||
install( TARGETS gerbview
|
if( APPLE )
|
||||||
DESTINATION ${KICAD_BIN}
|
# puts binaries into the *.app bundle while linking
|
||||||
COMPONENT binary
|
set_target_properties( gerbview PROPERTIES
|
||||||
)
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS gerbview
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set_target_properties( gerbview PROPERTIES
|
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
|
|
||||||
endif()
|
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file printout_controller.cpp
|
* @file printout_control.cpp
|
||||||
* @brief Board print handler implementation file.
|
* @brief Board print handler implementation file.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -97,13 +97,14 @@ enum pseudokeys {
|
||||||
#define PCB_CALCULATOR_EXE wxT( "pcb_calculator" )
|
#define PCB_CALCULATOR_EXE wxT( "pcb_calculator" )
|
||||||
#define PL_EDITOR_EXE wxT( "pl_editor" )
|
#define PL_EDITOR_EXE wxT( "pl_editor" )
|
||||||
#else
|
#else
|
||||||
#define CVPCB_EXE wxT( "cvpcb.app/Contents/MacOS/cvpcb" )
|
// All binaries are now in kicad.app bundle
|
||||||
#define PCBNEW_EXE wxT( "pcbnew.app/Contents/MacOS/pcbnew" )
|
#define CVPCB_EXE wxT( "kicad.app/Contents/MacOS/cvpcb" )
|
||||||
#define EESCHEMA_EXE wxT( "eeschema.app/Contents/MacOS/eeschema" )
|
#define PCBNEW_EXE wxT( "kicad.app/Contents/MacOS/pcbnew" )
|
||||||
#define GERBVIEW_EXE wxT( "gerbview.app/Contents/MacOS/gerbview" )
|
#define EESCHEMA_EXE wxT( "kicad.app/Contents/MacOS/eeschema" )
|
||||||
#define BITMAPCONVERTER_EXE wxT( "bitmap2component.app/Contents/MacOS/bitmap2component" )
|
#define GERBVIEW_EXE wxT( "kicad.app/Contents/MacOS/gerbview" )
|
||||||
#define PCB_CALCULATOR_EXE wxT( "pcb_calculator.app/Contents/MacOS/pcb_calculator" )
|
#define BITMAPCONVERTER_EXE wxT( "kicad.app/Contents/MacOS/bitmap2component" )
|
||||||
#define PL_EDITOR_EXE wxT( "pl_editor.app/Contents/MacOS/pl_editor" )
|
#define PCB_CALCULATOR_EXE wxT( "kicad.app/Contents/MacOS/pcb_calculator" )
|
||||||
|
#define PL_EDITOR_EXE wxT( "kicad.app/Contents/MacOS/pl_editor" )
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -268,8 +268,6 @@ public:
|
||||||
* Function LoadProjectFile
|
* Function LoadProjectFile
|
||||||
* loads the KiCad project file (*.pro) settings specific to Eeschema.
|
* loads the KiCad project file (*.pro) settings specific to Eeschema.
|
||||||
*
|
*
|
||||||
* @param aFileName The project file name to load.
|
|
||||||
* @param aForceReread Force the project file to be reread if true.
|
|
||||||
* @return True if the project file was loaded correctly.
|
* @return True if the project file was loaded correctly.
|
||||||
*/
|
*/
|
||||||
bool LoadProjectFile();
|
bool LoadProjectFile();
|
||||||
|
@ -643,18 +641,6 @@ public:
|
||||||
*/
|
*/
|
||||||
void OnSaveProject( wxCommandEvent& aEvent );
|
void OnSaveProject( wxCommandEvent& aEvent );
|
||||||
|
|
||||||
/**
|
|
||||||
* Function OpenProjectFiles
|
|
||||||
* loads an entire project into the schematic editor.
|
|
||||||
*
|
|
||||||
* This function loads schematic root file and it's subhierarchies, the project
|
|
||||||
* configuration, and the component libraries which are not already loaded.
|
|
||||||
*
|
|
||||||
* @param aFileSet is a list of one file, the top level schematic.
|
|
||||||
*
|
|
||||||
* @return bool - true if the project loaded properly, else false.
|
|
||||||
*/
|
|
||||||
//bool LoadOneEEProject( const wxString& aFileName, bool aIsNew );
|
|
||||||
bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl = 0 ); // virtual from KIWAY_PLAYER
|
bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl = 0 ); // virtual from KIWAY_PLAYER
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -674,7 +660,7 @@ public:
|
||||||
* @param aFullFileName A reference to a wxString object containing the absolute path
|
* @param aFullFileName A reference to a wxString object containing the absolute path
|
||||||
* and file name to load.
|
* and file name to load.
|
||||||
* @param append True if loaded file is being appended to the currently open file instead
|
* @param append True if loaded file is being appended to the currently open file instead
|
||||||
* of replacing it.
|
* of replacing it.
|
||||||
* @return True if \a aFullFileName has been loaded (at least partially.)
|
* @return True if \a aFullFileName has been loaded (at least partially.)
|
||||||
*/
|
*/
|
||||||
bool LoadOneEEFile( SCH_SCREEN* aScreen, const wxString& aFullFileName, bool append = false );
|
bool LoadOneEEFile( SCH_SCREEN* aScreen, const wxString& aFullFileName, bool append = false );
|
||||||
|
@ -705,8 +691,8 @@ public:
|
||||||
* @param aForceVisibilityState = Set to true to change the footprint field visibility
|
* @param aForceVisibilityState = Set to true to change the footprint field visibility
|
||||||
* state to \a aVisibilityState. False retains the
|
* state to \a aVisibilityState. False retains the
|
||||||
* current footprint field visibility state.
|
* current footprint field visibility state.
|
||||||
* @param aVisiblityState True to show the footprint field or false to hide the footprint
|
* @param aVisibilityState True to show the footprint field or false to hide the footprint
|
||||||
* field if \a aForceVisibilityState is true.
|
* field if \a aForceVisibilityState is true.
|
||||||
* @return bool = true if success.
|
* @return bool = true if success.
|
||||||
*/
|
*/
|
||||||
bool ProcessCmpToFootprintLinkFile( const wxString& aFullFilename,
|
bool ProcessCmpToFootprintLinkFile( const wxString& aFullFilename,
|
||||||
|
@ -1004,16 +990,20 @@ private:
|
||||||
* if libname != "", search in lib "libname"
|
* if libname != "", search in lib "libname"
|
||||||
* else search in all loaded libs
|
* else search in all loaded libs
|
||||||
*
|
*
|
||||||
|
* @param aDC is the device context to draw upon.
|
||||||
|
* @param aLibName is the library name to load the component from.
|
||||||
* @param aHistoryList list remembering recently used component names.
|
* @param aHistoryList list remembering recently used component names.
|
||||||
* @param aHistoryLastUnit remembering last unit in last component.
|
* @param aHistoryLastUnit remembering last unit in last component.
|
||||||
|
* @param aUseLibBrowser is the flag to determine if the library browser should be launched.
|
||||||
|
* @return a pointer the SCH_COMPONENT object selected or NULL if no component was selected.
|
||||||
* (TODO(hzeller): This really should be a class doing history, but didn't
|
* (TODO(hzeller): This really should be a class doing history, but didn't
|
||||||
* want to change too much while other refactoring is going on)
|
* want to change too much while other refactoring is going on)
|
||||||
*/
|
*/
|
||||||
SCH_COMPONENT* Load_Component( wxDC* DC,
|
SCH_COMPONENT* Load_Component( wxDC* aDC,
|
||||||
const wxString& libname,
|
const wxString& aLibName,
|
||||||
wxArrayString& aHistoryList,
|
wxArrayString& aHistoryList,
|
||||||
int& aHistoryLastUnit,
|
int& aHistoryLastUnit,
|
||||||
bool UseLibBrowser );
|
bool aUseLibBrowser );
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function EditComponent
|
* Function EditComponent
|
||||||
|
|
|
@ -56,23 +56,6 @@ if( UNIX )
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
# In this CMakeLists.txt's build directory, create kiface symlinks should get
|
|
||||||
# "installed()" as part of the kicad.app bundle. These are pointers on the
|
|
||||||
# target which point up and over to the stand alone kicad app's *.kiface files.
|
|
||||||
foreach( symlink pcbnew eeschema cvpcb )
|
|
||||||
add_custom_command( TARGET kicad
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/kicad.app/Contents/MacOS/_${symlink}.kiface"
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E create_symlink
|
|
||||||
"../../../${symlink}.app/Contents/MacOS/_${symlink}.kiface"
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/kicad.app/Contents/MacOS/_${symlink}.kiface"
|
|
||||||
COMMENT "kicad.app ${symlink} symlink"
|
|
||||||
)
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
set_target_properties( kicad PROPERTIES
|
set_target_properties( kicad PROPERTIES
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
||||||
|
@ -97,4 +80,47 @@ install( TARGETS kicad
|
||||||
DESTINATION ${KICAD_BIN}
|
DESTINATION ${KICAD_BIN}
|
||||||
COMPONENT binary
|
COMPONENT binary
|
||||||
)
|
)
|
||||||
|
if( APPLE )
|
||||||
|
# "install( CODE ... )" will launch its own CMake, so no variables from
|
||||||
|
# this CMake instance are accessible... use helper to transfer
|
||||||
|
if( KICAD_SCRIPTING OR KICAD_SCRIPTING_MODULES )
|
||||||
|
set( SCRIPTING_HELPER "1" )
|
||||||
|
else()
|
||||||
|
set( SCRIPTING_HELPER "0" )
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# make bundle relocatable
|
||||||
|
install( CODE "
|
||||||
|
# find all libs and modules
|
||||||
|
file( GLOB BUNDLE_FIX_LIBS ${OSX_BUNDLE_INSTALL_KIFACE_DIR}/*.kiface )
|
||||||
|
if( ${SCRIPTING_HELPER} )
|
||||||
|
file( GLOB PYTHON_SCRIPTING_SO ${OSX_BUNDLE_INSTALL_LIB_DIR}/${PYTHON_LIB_DIR}/*.so )
|
||||||
|
set( BUNDLE_FIX_LIBS \${BUNDLE_FIX_LIBS} \${PYTHON_SCRIPTING_SO} )
|
||||||
|
file( GLOB PYTHON_SCRIPTING_SO ${OSX_BUNDLE_INSTALL_LIB_DIR}/${PYTHON_LIB_DIR}/wx/*.so )
|
||||||
|
set( BUNDLE_FIX_LIBS \${BUNDLE_FIX_LIBS} \${PYTHON_SCRIPTING_SO} )
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# override default embedded path settings
|
||||||
|
function( gp_item_default_embedded_path_override item default_embedded_path_var )
|
||||||
|
# by default, embed things right next to the main bundle executable:
|
||||||
|
set( path \"@executable_path/../../Contents/MacOS\" )
|
||||||
|
set( overridden 0 )
|
||||||
|
|
||||||
|
# embed .dylibs right next to the main bundle executable:
|
||||||
|
if( item MATCHES \"\\\\.dylib$\" )
|
||||||
|
set( path \"@executable_path/../Frameworks\" )
|
||||||
|
set( overridden 1 )
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set( \${default_embedded_path_var} \"\${path}\" PARENT_SCOPE )
|
||||||
|
endfunction(gp_item_default_embedded_path_override)
|
||||||
|
|
||||||
|
# do all the work
|
||||||
|
include( BundleUtilities )
|
||||||
|
fixup_bundle( ${OSX_BUNDLE_INSTALL_BIN_DIR}/kicad
|
||||||
|
\"\${BUNDLE_FIX_LIBS}\"
|
||||||
|
\"\"
|
||||||
|
)
|
||||||
|
" COMPONENT Runtime
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
|
@ -7,31 +7,32 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>CFBundleTypeRole</key> <string>Editor</string>
|
<key>CFBundleTypeRole</key> <string>Editor</string>
|
||||||
<key>CFBundleTypeIconFile</key> <string>kicad_doc.icns</string>
|
<key>CFBundleTypeIconFile</key> <string>kicad_doc.icns</string>
|
||||||
|
|
||||||
<key>CFBundleTypeExtensions</key> <array>
|
<key>CFBundleTypeExtensions</key> <array>
|
||||||
<string>pro</string>
|
<string>pro</string>
|
||||||
</array>
|
</array>
|
||||||
|
|
||||||
<key>CFBundleTypeName</key> <string>kicad project files</string>
|
<key>CFBundleTypeName</key> <string>kicad project files</string>
|
||||||
<key>LSHandlerRank</key> <string>Owner</string>
|
<key>LSHandlerRank</key> <string>Owner</string>
|
||||||
</dict>
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
|
|
||||||
<key>CFBundleDevelopmentRegion</key> <string>English</string>
|
<key>CFBundleDevelopmentRegion</key> <string>English</string>
|
||||||
<key>CFBundleExecutable</key> <string>kicad</string>
|
<key>CFBundleExecutable</key> <string>kicad</string>
|
||||||
<key>CFBundleGetInfoString</key> <string></string>
|
<key>CFBundleGetInfoString</key> <string></string>
|
||||||
<key>CFBundleIconFile</key> <string>kicad.icns</string>
|
<key>CFBundleIconFile</key> <string>kicad.icns</string>
|
||||||
<key>CFBundleIdentifier</key> <string>org.kicad-eda.kicad</string>
|
<key>CFBundleIdentifier</key> <string>org.kicad-eda.kicad</string>
|
||||||
<key>CFBundleInfoDictionaryVersion</key> <string>6.0</string>
|
<key>CFBundleInfoDictionaryVersion</key> <string>6.0</string>
|
||||||
<key>CFBundleLongVersionString</key> <string></string>
|
<key>CFBundleLongVersionString</key> <string></string>
|
||||||
<key>CFBundleName</key> <string>KiCad</string>
|
<key>CFBundleName</key> <string>KiCad</string>
|
||||||
<key>CFBundlePackageType</key> <string>APPL</string>
|
<key>CFBundlePackageType</key> <string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key> <string></string>
|
<key>CFBundleShortVersionString</key> <string></string>
|
||||||
<key>CFBundleSignature</key> <string>????</string>
|
<key>CFBundleSignature</key> <string>????</string>
|
||||||
<key>CFBundleVersion</key> <string></string>
|
<key>CFBundleVersion</key> <string></string>
|
||||||
<key>CSResourcesFileMapped</key> <true/>
|
<key>CSResourcesFileMapped</key> <true/>
|
||||||
<key>LSRequiresCarbon</key> <true/>
|
<key>LSRequiresCarbon</key> <true/>
|
||||||
<key>NSHumanReadableCopyright</key> <string></string>
|
<key>NSHumanReadableCopyright</key> <string></string>
|
||||||
<key>NSHighResolutionCapable</key> <string>True</string>
|
<key>NSHighResolutionCapable</key> <string>True</string>
|
||||||
|
<key>LSEnvironment</key>
|
||||||
|
<dict>
|
||||||
|
<key>KIGITHUB</key> <string>https://github.com/kicad</string>
|
||||||
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
@ -53,23 +53,10 @@ if( MINGW )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set( PL_EDITOR_RESOURCES pl_editor.icns pl_editor_doc.icns )
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pl_editor.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pl_editor_doc.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set( MACOSX_BUNDLE_ICON_FILE pl_editor.icns )
|
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-eda.pl_editor )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
if( USE_KIWAY_DLLS )
|
if( USE_KIWAY_DLLS )
|
||||||
|
|
||||||
# a very small program launcher for pl_editor_kiface
|
# a very small program launcher for pl_editor_kiface
|
||||||
add_executable( pl_editor WIN32 MACOSX_BUNDLE
|
add_executable( pl_editor WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
../common/pgm_base.cpp
|
../common/pgm_base.cpp
|
||||||
${PL_EDITOR_RESOURCES}
|
${PL_EDITOR_RESOURCES}
|
||||||
|
@ -122,16 +109,19 @@ if( USE_KIWAY_DLLS )
|
||||||
add_dependencies( pl_editor pl_editor_kiface )
|
add_dependencies( pl_editor pl_editor_kiface )
|
||||||
|
|
||||||
# these 2 binaries are a matched set, keep them together:
|
# these 2 binaries are a matched set, keep them together:
|
||||||
install( TARGETS pl_editor
|
|
||||||
DESTINATION ${KICAD_BIN}
|
|
||||||
COMPONENT binary
|
|
||||||
)
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# puts the *.kiface into the *.app bundle while linking
|
# puts binaries into the *.app bundle while linking
|
||||||
|
set_target_properties( pl_editor PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
set_target_properties( pl_editor_kiface PROPERTIES
|
set_target_properties( pl_editor_kiface PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/pl_editor.app/Contents/MacOS/
|
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
|
install( TARGETS pl_editor
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
install( TARGETS pl_editor_kiface
|
install( TARGETS pl_editor_kiface
|
||||||
DESTINATION ${KICAD_BIN}
|
DESTINATION ${KICAD_BIN}
|
||||||
COMPONENT binary
|
COMPONENT binary
|
||||||
|
@ -140,7 +130,7 @@ if( USE_KIWAY_DLLS )
|
||||||
|
|
||||||
else()
|
else()
|
||||||
|
|
||||||
add_executable( pl_editor WIN32 MACOSX_BUNDLE
|
add_executable( pl_editor WIN32
|
||||||
pl_editor.cpp
|
pl_editor.cpp
|
||||||
${PL_EDITOR_SRCS}
|
${PL_EDITOR_SRCS}
|
||||||
${DIALOGS_SRCS}
|
${DIALOGS_SRCS}
|
||||||
|
@ -155,15 +145,15 @@ else()
|
||||||
${wxWidgets_LIBRARIES}
|
${wxWidgets_LIBRARIES}
|
||||||
${GDI_PLUS_LIBRARIES}
|
${GDI_PLUS_LIBRARIES}
|
||||||
)
|
)
|
||||||
install( TARGETS pl_editor
|
if( APPLE )
|
||||||
DESTINATION ${KICAD_BIN}
|
# puts binaries into the *.app bundle while linking
|
||||||
COMPONENT binary
|
set_target_properties( pl_editor PROPERTIES
|
||||||
)
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
endif()
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS pl_editor
|
||||||
if( APPLE )
|
DESTINATION ${KICAD_BIN}
|
||||||
set_target_properties( pl_editor PROPERTIES
|
COMPONENT binary
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
)
|
||||||
)
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
Index: configure
|
||||||
|
===================================================================
|
||||||
|
--- configure (revision 77757)
|
||||||
|
+++ configure (working copy)
|
||||||
|
@@ -29176,7 +29176,7 @@
|
||||||
|
*-*-darwin* )
|
||||||
|
install_name_tool=`which ${HOST_PREFIX}install_name_tool`
|
||||||
|
if test "$install_name_tool" -a -x "$install_name_tool"; then
|
||||||
|
- DYLIB_RPATH_POSTLINK="${HOST_PREFIX}install_name_tool -id \$@ \$@"
|
||||||
|
+ DYLIB_RPATH_POSTLINK=""
|
||||||
|
cat <<EOF >change-install-names
|
||||||
|
#!/bin/sh
|
||||||
|
libnames=\`cd \${1} ; ls -1 | grep '\.[0-9][0-9]*\.dylib\$'\`
|
||||||
|
@@ -29189,7 +29189,7 @@
|
||||||
|
done
|
||||||
|
EOF
|
||||||
|
chmod +x change-install-names
|
||||||
|
- DYLIB_RPATH_INSTALL="\$(wx_top_builddir)/change-install-names \${DESTDIR}\${libdir} \${DESTDIR}\${bindir} \${libdir} \$(wx_top_builddir)/lib"
|
||||||
|
+ DYLIB_RPATH_INSTALL=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
HEADER_PAD_OPTION="-headerpad_max_install_names"
|
||||||
|
Index: configure.in
|
||||||
|
===================================================================
|
||||||
|
--- configure.in (revision 77757)
|
||||||
|
+++ configure.in (working copy)
|
||||||
|
@@ -3772,7 +3772,7 @@
|
||||||
|
*-*-darwin* )
|
||||||
|
install_name_tool=`which ${HOST_PREFIX}install_name_tool`
|
||||||
|
if test "$install_name_tool" -a -x "$install_name_tool"; then
|
||||||
|
- DYLIB_RPATH_POSTLINK="${HOST_PREFIX}install_name_tool -id \$@ \$@"
|
||||||
|
+ DYLIB_RPATH_POSTLINK=""
|
||||||
|
cat <<EOF >change-install-names
|
||||||
|
#!/bin/sh
|
||||||
|
libnames=\`cd \${1} ; ls -1 | grep '\.[[0-9]][[0-9]]*\.dylib\$'\`
|
||||||
|
@@ -3785,7 +3785,7 @@
|
||||||
|
done
|
||||||
|
EOF
|
||||||
|
chmod +x change-install-names
|
||||||
|
- DYLIB_RPATH_INSTALL="\$(wx_top_builddir)/change-install-names \${DESTDIR}\${libdir} \${DESTDIR}\${bindir} \${libdir} \$(wx_top_builddir)/lib"
|
||||||
|
+ DYLIB_RPATH_INSTALL=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl the HEADER_PAD_OPTION is required by some wx samples to avoid the error:
|
|
@ -42,17 +42,6 @@ if( MINGW )
|
||||||
mingw_resource_compiler(pcb_calculator)
|
mingw_resource_compiler(pcb_calculator)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set( PCB_CALCULATOR_RESOURCES pcb_calculator.icns )
|
|
||||||
set_source_files_properties("${CMAKE_CURRENT_SOURCE_DIR}/pcb_calculator.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set( MACOSX_BUNDLE_ICON_FILE pcb_calculator.icns )
|
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-eda.pcb_calculator )
|
|
||||||
set( MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# auto-generate pcb_calculator_datafile.h and pcb_calculator_datafile_keywords.cpp
|
# auto-generate pcb_calculator_datafile.h and pcb_calculator_datafile_keywords.cpp
|
||||||
# for the storage data file format.
|
# for the storage data file format.
|
||||||
make_lexer(
|
make_lexer(
|
||||||
|
@ -69,7 +58,7 @@ make_lexer(
|
||||||
if( USE_KIWAY_DLLS )
|
if( USE_KIWAY_DLLS )
|
||||||
#if( false )
|
#if( false )
|
||||||
|
|
||||||
add_executable( pcb_calculator WIN32 MACOSX_BUNDLE
|
add_executable( pcb_calculator WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
../common/pgm_base.cpp
|
../common/pgm_base.cpp
|
||||||
${PCB_CALCULATOR_RESOURCES}
|
${PCB_CALCULATOR_RESOURCES}
|
||||||
|
@ -118,16 +107,19 @@ if( USE_KIWAY_DLLS )
|
||||||
add_dependencies( pcb_calculator pcb_calculator_kiface )
|
add_dependencies( pcb_calculator pcb_calculator_kiface )
|
||||||
|
|
||||||
# these 2 binaries are a matched set, keep them together
|
# these 2 binaries are a matched set, keep them together
|
||||||
install( TARGETS pcb_calculator
|
|
||||||
DESTINATION ${KICAD_BIN}
|
|
||||||
COMPONENT binary
|
|
||||||
)
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# puts the *.kiface into the *.app bundle while linking
|
# puts binaries into the *.app bundle while linking
|
||||||
|
set_target_properties( pcb_calculator PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
set_target_properties( pcb_calculator_kiface PROPERTIES
|
set_target_properties( pcb_calculator_kiface PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/pcb_calculator.app/Contents/MacOS/
|
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
|
install( TARGETS pcb_calculator
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
install( TARGETS pcb_calculator_kiface
|
install( TARGETS pcb_calculator_kiface
|
||||||
DESTINATION ${KICAD_BIN}
|
DESTINATION ${KICAD_BIN}
|
||||||
COMPONENT binary
|
COMPONENT binary
|
||||||
|
@ -136,7 +128,7 @@ if( USE_KIWAY_DLLS )
|
||||||
|
|
||||||
else()
|
else()
|
||||||
|
|
||||||
add_executable( pcb_calculator WIN32 MACOSX_BUNDLE
|
add_executable( pcb_calculator WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
pcb_calculator.cpp
|
pcb_calculator.cpp
|
||||||
${PCB_CALCULATOR_SRCS}
|
${PCB_CALCULATOR_SRCS}
|
||||||
|
@ -154,16 +146,16 @@ else()
|
||||||
polygon
|
polygon
|
||||||
${wxWidgets_LIBRARIES}
|
${wxWidgets_LIBRARIES}
|
||||||
)
|
)
|
||||||
install( TARGETS pcb_calculator
|
if( APPLE )
|
||||||
DESTINATION ${KICAD_BIN}
|
# puts binaries into the *.app bundle while linking
|
||||||
COMPONENT binary
|
set_target_properties( pcb_calculator PROPERTIES
|
||||||
)
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS pcb_calculator
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set_target_properties( pcb_calculator PROPERTIES
|
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
|
@ -417,8 +417,9 @@ if( KICAD_SCRIPTING_MODULES )
|
||||||
|
|
||||||
if( ${OPENMP_FOUND} )
|
if( ${OPENMP_FOUND} )
|
||||||
set_property( TARGET _pcbnew APPEND_STRING
|
set_property( TARGET _pcbnew APPEND_STRING
|
||||||
PROPERTY LINK_FLAGS " ${OpenMP_CXX_FLAGS}" )
|
PROPERTY LINK_FLAGS " ${OpenMP_CXX_FLAGS}"
|
||||||
endif()
|
)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
@ -472,19 +473,6 @@ if( MINGW )
|
||||||
mingw_resource_compiler( pcbnew )
|
mingw_resource_compiler( pcbnew )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if( APPLE )
|
|
||||||
set( PCBNEW_RESOURCES pcbnew.icns pcbnew_doc.icns )
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pcbnew.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pcbnew_doc.icns" PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
|
||||||
)
|
|
||||||
set( MACOSX_BUNDLE_ICON_FILE pcbnew.icns )
|
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-eda.pcbnew )
|
|
||||||
set( MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Create a C++ compilable string initializer containing html text into a *.h file:
|
# Create a C++ compilable string initializer containing html text into a *.h file:
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/dialogs/dialog_freeroute_exchange_help_html.h
|
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/dialogs/dialog_freeroute_exchange_help_html.h
|
||||||
|
@ -525,7 +513,7 @@ if( USE_KIWAY_DLLS )
|
||||||
#if( false )
|
#if( false )
|
||||||
|
|
||||||
# a very small program launcher for pcbnew_kiface
|
# a very small program launcher for pcbnew_kiface
|
||||||
add_executable( pcbnew WIN32 MACOSX_BUNDLE
|
add_executable( pcbnew WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
${PCBNEW_RESOURCES}
|
${PCBNEW_RESOURCES}
|
||||||
)
|
)
|
||||||
|
@ -604,16 +592,19 @@ if( USE_KIWAY_DLLS )
|
||||||
add_dependencies( pcbnew pcbnew_kiface )
|
add_dependencies( pcbnew pcbnew_kiface )
|
||||||
|
|
||||||
# these 2 binaries are a matched set, keep them together:
|
# these 2 binaries are a matched set, keep them together:
|
||||||
install( TARGETS pcbnew
|
|
||||||
DESTINATION ${KICAD_BIN}
|
|
||||||
COMPONENT binary
|
|
||||||
)
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# puts the *.kiface into the *.app bundle while linking
|
# puts binaries into the *.app bundle while linking
|
||||||
|
set_target_properties( pcbnew PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
set_target_properties( pcbnew_kiface PROPERTIES
|
set_target_properties( pcbnew_kiface PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/pcbnew.app/Contents/MacOS/
|
LIBRARY_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_KIFACE_DIR}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
|
install( TARGETS pcbnew
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
install( TARGETS pcbnew_kiface
|
install( TARGETS pcbnew_kiface
|
||||||
DESTINATION ${KICAD_BIN}
|
DESTINATION ${KICAD_BIN}
|
||||||
COMPONENT binary
|
COMPONENT binary
|
||||||
|
@ -622,7 +613,7 @@ if( USE_KIWAY_DLLS )
|
||||||
|
|
||||||
else() # milestone A) kills this off:
|
else() # milestone A) kills this off:
|
||||||
|
|
||||||
add_executable( pcbnew WIN32 MACOSX_BUNDLE
|
add_executable( pcbnew WIN32
|
||||||
../common/single_top.cpp
|
../common/single_top.cpp
|
||||||
pcbnew.cpp
|
pcbnew.cpp
|
||||||
${PCBNEW_SRCS}
|
${PCBNEW_SRCS}
|
||||||
|
@ -675,59 +666,38 @@ else() # milestone A) kills this off:
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
install( TARGETS pcbnew
|
if( APPLE )
|
||||||
DESTINATION ${KICAD_BIN}
|
# puts binaries into the *.app bundle while linking
|
||||||
COMPONENT binary
|
set_target_properties( pcbnew PROPERTIES
|
||||||
)
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS pcbnew
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
add_dependencies( pcbnew lib-dependencies )
|
add_dependencies( pcbnew lib-dependencies )
|
||||||
if( APPLE )
|
|
||||||
set_target_properties( pcbnew PROPERTIES
|
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
if( KICAD_SCRIPTING )
|
if( KICAD_SCRIPTING )
|
||||||
add_custom_target( FixSwigImportsScripting ALL
|
if( NOT APPLE )
|
||||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/scripting/build_tools/fix_swig_imports.py ${CMAKE_CURRENT_BINARY_DIR}/pcbnew.py
|
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/pcbnew.py DESTINATION ${PYTHON_DEST} )
|
||||||
DEPENDS pcbnew
|
else()
|
||||||
COMMENT "Fixing swig_import_helper in Kicad scripting"
|
# put into bundle at build time, it is relocated at install
|
||||||
)
|
add_custom_target( ScriptingPcbnewPyCopy ALL
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_BINARY_DIR}/pcbnew/pcbnew.py" "${PYTHON_DEST}"
|
||||||
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/pcbnew.py DESTINATION ${PYTHON_DEST} )
|
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/pcbnew.py
|
||||||
|
COMMENT "Copying pcbnew.py into ${PYTHON_DEST}"
|
||||||
if( APPLE )
|
|
||||||
# copies all into PYTHON_DEST then all into the bundle !
|
|
||||||
add_custom_target( _pcbnew_py_copy ALL
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/pcbnew/pcbnew.py "${PYTHON_DEST}/wx-3.0-osx_cocoa/"
|
|
||||||
DEPENDS FixSwigImportsScripting
|
|
||||||
COMMENT "Copying pcbnew.py into PYTHON_DEST/wx-3.0-osx_cocoa/"
|
|
||||||
)
|
)
|
||||||
|
# scripting plugins
|
||||||
add_custom_target( pcbnew_copy_wxpython_scripting ALL
|
install( DIRECTORY ${PROJECT_SOURCE_DIR}/pcbnew/scripting/plugins/
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBWXPYTHON_ROOT}/wxPython/ ${CMAKE_SOURCE_DIR}/pcbnew/pcbnew.app/Contents/Frameworks/wxPython/
|
DESTINATION ${KICAD_DATA}/scripting/plugins
|
||||||
DEPENDS FixSwigImportsScripting _pcbnew_py_copy
|
COMPONENT binary
|
||||||
COMMENT "Copying wxPython into pcbnew.app Framework"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
add_custom_target( pcbnew_copy_plugins ALL
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PROJECT_SOURCE_DIR}/pcbnew/scripting/plugins ${PROJECT_SOURCE_DIR}/pcbnew/pcbnew.app/Contents/PlugIns/scripting/plugins
|
|
||||||
DEPENDS pcbnew_copy_wxpython_scripting
|
|
||||||
COMMENT "Copying plugins into bundle"
|
|
||||||
)
|
|
||||||
|
|
||||||
# fix bundle after copying wxpython, fixing and copying
|
|
||||||
add_dependencies( osx_fix_bundles pcbnew_copy_wxpython_scripting )
|
|
||||||
|
|
||||||
if ( KICAD_SCRIPTING_MODULES )
|
|
||||||
#they do more or less the same job, avoid race between them
|
|
||||||
#Cmake copy goes in error otherwise
|
|
||||||
add_dependencies( pcbnew_copy_wxpython_scripting pcbnew_copy_wxpython_module )
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -738,33 +708,43 @@ if( KICAD_SCRIPTING_MODULES )
|
||||||
COMMENT "Fixing swig_import_helper in Kicad scripting modules"
|
COMMENT "Fixing swig_import_helper in Kicad scripting modules"
|
||||||
)
|
)
|
||||||
|
|
||||||
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/pcbnew.py DESTINATION ${PYTHON_DEST} )
|
if( NOT APPLE )
|
||||||
|
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/pcbnew.py DESTINATION ${PYTHON_DEST} )
|
||||||
|
else()
|
||||||
|
# put everything into bundle at build time, it is relocated at install
|
||||||
|
add_custom_target( ScriptingModulesPcbnewPyCopy ALL
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_BINARY_DIR}/pcbnew/pcbnew.py" "${PYTHON_DEST}"
|
||||||
|
DEPENDS FixSwigImportsModuleScripting
|
||||||
|
COMMENT "Copying pcbnew.py into ${PYTHON_DEST}"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
if( MINGW )
|
if( MINGW )
|
||||||
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/_pcbnew.pyd DESTINATION ${PYTHON_DEST} )
|
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/_pcbnew.pyd DESTINATION ${PYTHON_DEST} )
|
||||||
|
elseif( APPLE )
|
||||||
|
# put everything into bundle at build time, it is relocated at install
|
||||||
|
add_custom_target( ScriptingModulesPcbnewSoCopy ALL
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_BINARY_DIR}/pcbnew/_pcbnew.so" "${PYTHON_DEST}"
|
||||||
|
DEPENDS _pcbnew
|
||||||
|
COMMENT "Copying _pcbnew.so into ${PYTHON_DEST}"
|
||||||
|
)
|
||||||
else()
|
else()
|
||||||
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/_pcbnew.so DESTINATION ${PYTHON_DEST} )
|
install( FILES ${CMAKE_BINARY_DIR}/pcbnew/_pcbnew.so DESTINATION ${PYTHON_DEST} )
|
||||||
endif()
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# copies needed files into PYTHON_DEST then copy all into the bundle !
|
if( KICAD_SCRIPTING OR KICAD_SCRIPTING_MODULES )
|
||||||
add_custom_target( _pcbnew_so_copy ALL
|
# find wx-X.Y-osx_cocoa path below PYTHON_SITE_PACKAGE_PATH
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/pcbnew/_pcbnew.so "${PYTHON_DEST}"
|
file( GLOB WXPYTHON_PATH ${PYTHON_SITE_PACKAGE_PATH}/wx-?.?-osx_cocoa )
|
||||||
DEPENDS _pcbnew FixSwigImportsModuleScripting
|
if( NOT WXPYTHON_PATH )
|
||||||
COMMENT "Copying _pcbnew.so into PYTHON_DEST"
|
message( FATAL_ERROR "Could not find 'wx-?.?-osx_cocoa' in '${PYTHON_SITE_PACKAGE_PATH}'" )
|
||||||
)
|
|
||||||
|
|
||||||
add_custom_target( pcbnew_copy_wxpython_module ALL
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBWXPYTHON_ROOT}/wxPython/ ${PROJECT_SOURCE_DIR}/pcbnew/pcbnew.app/Contents/Frameworks/wxPython/
|
|
||||||
DEPENDS FixSwigImportsModuleScripting _pcbnew_so_copy
|
|
||||||
COMMENT "Copying wxPython into pcbnew.app Frameworks"
|
|
||||||
)
|
|
||||||
|
|
||||||
if( KICAD_BUILD_DYNAMIC )
|
|
||||||
# Tell that we have to run osx_fix_bundles fix after building _pcbnew and migrating wxPython
|
|
||||||
add_dependencies( osx_fix_bundles pcbnew_copy_wxpython_module )
|
|
||||||
add_dependencies( osx_fix_bundles _pcbnew )
|
|
||||||
endif()
|
endif()
|
||||||
|
# copy contents
|
||||||
|
add_custom_target( ScriptingWxpythonCopy ALL
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory "${WXPYTHON_PATH}" "${PYTHON_DEST}"
|
||||||
|
COMMENT "Copying wxPython into ${PYTHON_DEST}"
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -781,4 +761,3 @@ if( false ) # haven't been used in years.
|
||||||
)
|
)
|
||||||
target_link_libraries( layer_widget_test common ${wxWidgets_LIBRARIES} )
|
target_link_libraries( layer_widget_test common ${wxWidgets_LIBRARIES} )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/**
|
/**
|
||||||
* @file autoplac.cpp
|
* @file auto_place_footprints.cpp
|
||||||
* @brief Functions to automatically place Footprints on a board.
|
* @brief Functions to automatically place Footprints on a board.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file automove.cpp
|
* @file move_and_route_event_functions.cpp
|
||||||
* @brief Routines for automatic displacement and rotation of modules.
|
* @brief Routines for automatic displacement and rotation of modules.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -663,6 +663,7 @@ void BOARD::Add( BOARD_ITEM* aBoardItem, int aControl )
|
||||||
TRACK* insertAid;
|
TRACK* insertAid;
|
||||||
insertAid = ( (TRACK*) aBoardItem )->GetBestInsertPoint( this );
|
insertAid = ( (TRACK*) aBoardItem )->GetBestInsertPoint( this );
|
||||||
m_Track.Insert( (TRACK*) aBoardItem, insertAid );
|
m_Track.Insert( (TRACK*) aBoardItem, insertAid );
|
||||||
|
aBoardItem->SetParent( this );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PCB_ZONE_T:
|
case PCB_ZONE_T:
|
||||||
|
|
|
@ -382,7 +382,7 @@ public:
|
||||||
* Function GetValue
|
* Function GetValue
|
||||||
* @return const wxString& - the value text.
|
* @return const wxString& - the value text.
|
||||||
*/
|
*/
|
||||||
const wxString& GetValue()
|
const wxString& GetValue() const
|
||||||
{
|
{
|
||||||
return m_Value->GetText();
|
return m_Value->GetText();
|
||||||
}
|
}
|
||||||
|
|
|
@ -492,3 +492,64 @@ void TEXTE_MODULE::ViewGetLayers( int aLayers[], int& aCount ) const
|
||||||
aCount = 1;
|
aCount = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Macro-expansion for text in library modules
|
||||||
|
*/
|
||||||
|
wxString TEXTE_MODULE::GetShownText() const
|
||||||
|
{
|
||||||
|
/* First order optimization: no % means that no processing is
|
||||||
|
* needed; just hope that RVO and copy constructor implementation
|
||||||
|
* avoid to copy the whole block; anyway it should be better than
|
||||||
|
* rebuild the string one character at a time...
|
||||||
|
* Also it seems wise to only expand macros in user text (but there
|
||||||
|
* is no technical reason, probably) */
|
||||||
|
|
||||||
|
if( (m_Type != TEXT_is_DIVERS) || (wxString::npos == m_Text.find('%')) )
|
||||||
|
return m_Text;
|
||||||
|
wxString newbuf;
|
||||||
|
|
||||||
|
|
||||||
|
const MODULE *module = static_cast<MODULE*>( GetParent() );
|
||||||
|
|
||||||
|
for( wxString::const_iterator it = m_Text.begin();
|
||||||
|
it != m_Text.end(); ++it )
|
||||||
|
{
|
||||||
|
// Process '%' and copy everything else
|
||||||
|
if( *it != '%' )
|
||||||
|
newbuf.append(*it);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* Look at the next character (if is it there) and append
|
||||||
|
* its expansion */
|
||||||
|
++it;
|
||||||
|
if( it != m_Text.end() )
|
||||||
|
{
|
||||||
|
switch( char(*it) )
|
||||||
|
{
|
||||||
|
case '%':
|
||||||
|
newbuf.append( '%' );
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'R':
|
||||||
|
if( module )
|
||||||
|
newbuf.append( module->GetReference() );
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'V':
|
||||||
|
if( module )
|
||||||
|
newbuf.append( module->GetValue() );
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
newbuf.append( '?' );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
break; // The string is over and we can't ++ anymore
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return newbuf;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -173,6 +173,8 @@ public:
|
||||||
|
|
||||||
EDA_ITEM* Clone() const;
|
EDA_ITEM* Clone() const;
|
||||||
|
|
||||||
|
virtual wxString GetShownText() const;
|
||||||
|
|
||||||
/// @copydoc VIEW_ITEM::ViewBBox()
|
/// @copydoc VIEW_ITEM::ViewBBox()
|
||||||
virtual const BOX2I ViewBBox() const;
|
virtual const BOX2I ViewBBox() const;
|
||||||
|
|
||||||
|
|
|
@ -804,7 +804,8 @@ void ZONE_CONTAINER::Copy( ZONE_CONTAINER* src )
|
||||||
SetTimeStamp( src->m_TimeStamp );
|
SetTimeStamp( src->m_TimeStamp );
|
||||||
m_Poly->RemoveAllContours();
|
m_Poly->RemoveAllContours();
|
||||||
m_Poly->Copy( src->m_Poly ); // copy outlines
|
m_Poly->Copy( src->m_Poly ); // copy outlines
|
||||||
m_CornerSelection = -1; // For corner moving, corner index to drag, or -1 if no selection
|
m_CornerSelection = -1; // For corner moving, corner index to drag,
|
||||||
|
// or -1 if no selection
|
||||||
m_ZoneClearance = src->m_ZoneClearance; // clearance value
|
m_ZoneClearance = src->m_ZoneClearance; // clearance value
|
||||||
m_ZoneMinThickness = src->m_ZoneMinThickness;
|
m_ZoneMinThickness = src->m_ZoneMinThickness;
|
||||||
m_FillMode = src->m_FillMode; // Filling mode (segments/polygons)
|
m_FillMode = src->m_FillMode; // Filling mode (segments/polygons)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/**
|
/**
|
||||||
* @file zones_non_copper_type_functions.cpp
|
* @file dialog_non_copper_zones_properties.cpp
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||||
|
|
|
@ -1233,8 +1233,8 @@ void LEGACY_PLUGIN::loadMODULE( MODULE* aModule )
|
||||||
textm = &aModule->Value();
|
textm = &aModule->Value();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TEXTE_MODULE::TEXT_is_DIVERS:
|
// All other fields greater than 1.
|
||||||
// text is a drawing
|
default:
|
||||||
textm = new TEXTE_MODULE( aModule );
|
textm = new TEXTE_MODULE( aModule );
|
||||||
aModule->GraphicalItems().PushBack( textm );
|
aModule->GraphicalItems().PushBack( textm );
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,5 +29,4 @@ set( PCAD2PCBNEW_SRCS
|
||||||
)
|
)
|
||||||
|
|
||||||
add_library( pcad2kicadpcb STATIC ${PCAD2PCBNEW_SRCS} )
|
add_library( pcad2kicadpcb STATIC ${PCAD2PCBNEW_SRCS} )
|
||||||
add_dependencies( pcad2kicadpcb lib-dependencies )
|
add_dependencies( pcad2kicadpcb pcbcommon )
|
||||||
|
|
||||||
|
|
|
@ -217,7 +217,7 @@ static bool scriptingSetup()
|
||||||
{
|
{
|
||||||
wxString path_frag;
|
wxString path_frag;
|
||||||
|
|
||||||
#ifdef __MINGW32__
|
#ifdef __MINGW32__
|
||||||
// force python environment under Windows:
|
// force python environment under Windows:
|
||||||
const wxString python_us( "python27_us" );
|
const wxString python_us( "python27_us" );
|
||||||
|
|
||||||
|
@ -261,32 +261,36 @@ static bool scriptingSetup()
|
||||||
// [KICAD_PATH]/scripting/plugins
|
// [KICAD_PATH]/scripting/plugins
|
||||||
// Add this default search path:
|
// Add this default search path:
|
||||||
path_frag = Pgm().GetExecutablePath() + wxT( "scripting/plugins" );
|
path_frag = Pgm().GetExecutablePath() + wxT( "scripting/plugins" );
|
||||||
#else
|
#elif defined __WXMAC__
|
||||||
|
// User plugin folder is ~/Library/Application Support/kicad/scripting/plugins
|
||||||
|
path_frag = wxStandardPaths::Get().GetUserDataDir() + wxT( "/scripting/plugins" );
|
||||||
|
|
||||||
|
// Add default paths to PYTHONPATH
|
||||||
|
wxString pypath;
|
||||||
|
// User scripting folder (~/Library/Application Support/kicad/scripting/plugins)
|
||||||
|
pypath = wxStandardPaths::Get().GetUserDataDir() + wxT( "/scripting/plugins" );
|
||||||
|
// Machine scripting folder (/Library/Application Support/kicad/scripting/plugins)
|
||||||
|
pypath += wxT( ":/Library/Application Support/kicad/scripting/plugins" );
|
||||||
|
// Bundle scripting folder (<kicad.app>/Contents/SharedSupport/scripting/plugins)
|
||||||
|
pypath += wxT( ":" ) + wxStandardPaths::Get().GetDataDir() + wxT( "/scripting/plugins" );
|
||||||
|
// Bundle wxPython folder (<kicad.app>/Contents/Frameworks/python)
|
||||||
|
wxFileName fn = wxFileName( wxStandardPaths::Get().GetExecutablePath() );
|
||||||
|
fn.RemoveLastDir();
|
||||||
|
fn.AppendDir( wxT( "Frameworks" ) );
|
||||||
|
fn.AppendDir( wxT( "python" ) );
|
||||||
|
pypath += wxT( ":" ) + fn.GetPath();
|
||||||
|
// Original content of PYTHONPATH
|
||||||
|
if( wxGetenv("PYTHONPATH") != NULL )
|
||||||
|
{
|
||||||
|
pypath += wxT( ":" ) + wxString( wxGetenv("PYTHONPATH") );
|
||||||
|
}
|
||||||
|
|
||||||
|
// set $PYTHONPATH
|
||||||
|
wxSetEnv( "PYTHONPATH", pypath );
|
||||||
|
#else
|
||||||
// Add this default search path:
|
// Add this default search path:
|
||||||
path_frag = wxT( "/usr/local/kicad/bin/scripting/plugins" );
|
path_frag = wxT( "/usr/local/kicad/bin/scripting/plugins" );
|
||||||
|
#endif
|
||||||
#ifdef __WXMAC__
|
|
||||||
// OSX
|
|
||||||
// System Library first
|
|
||||||
// User Library then
|
|
||||||
// (TODO) Bundle package ? where to place ? Shared Support ?
|
|
||||||
path_frag = wxT( "/Library/Application Support/kicad/scripting" );
|
|
||||||
path_frag = wxString( wxGetenv("HOME") ) + wxT( "/Library/Application Support/kicad/scripting" );
|
|
||||||
|
|
||||||
// Get pcbnew.app/Contents directory
|
|
||||||
wxFileName bundledir( wxStandardPaths::Get().GetExecutablePath() ) ;
|
|
||||||
bundledir.RemoveLastDir();
|
|
||||||
|
|
||||||
// Prepend in PYTHONPATH the content of the bundle libraries !
|
|
||||||
wxSetEnv( "PYTHONPATH", ((wxGetenv("PYTHONPATH") != NULL ) ? (wxString(wxGetenv("PYTHONPATH")) + ":") : wxString("")) +
|
|
||||||
bundledir.GetPath() +
|
|
||||||
"/Frameworks/wxPython/lib/python2.6/site-packages/wx-3.0-osx_cocoa" + ":" +
|
|
||||||
"/Library/Application Support/kicad/" + ":" +
|
|
||||||
bundledir.GetPath() + "/PlugIns" + ":" +
|
|
||||||
wxString( wxGetenv("HOME") ) + "/Library/Application Support/kicad/"
|
|
||||||
);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// On linux and osx, 2 others paths are
|
// On linux and osx, 2 others paths are
|
||||||
// [HOME]/.kicad_plugins/
|
// [HOME]/.kicad_plugins/
|
||||||
|
|
|
@ -36,7 +36,6 @@
|
||||||
def GetDrawings(self): return self.m_Drawings
|
def GetDrawings(self): return self.m_Drawings
|
||||||
def GetTracks(self): return self.m_Track
|
def GetTracks(self): return self.m_Track
|
||||||
def GetFullRatsnest(self): return self.m_FullRatsnest
|
def GetFullRatsnest(self): return self.m_FullRatsnest
|
||||||
def GetZones(self): return self.m_ZoneDescriptorList
|
|
||||||
|
|
||||||
def Save(self,filename):
|
def Save(self,filename):
|
||||||
return SaveBoard(filename,self,IO_MGR.KICAD)
|
return SaveBoard(filename,self,IO_MGR.KICAD)
|
||||||
|
@ -47,8 +46,8 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
def Add(self,item):
|
def Add(self,item):
|
||||||
item.thisown=0
|
item.thisown=0
|
||||||
self.AddNative(item)
|
self.AddNative(item)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -75,44 +74,44 @@
|
||||||
|
|
||||||
%extend BOARD
|
%extend BOARD
|
||||||
{
|
{
|
||||||
%pythoncode
|
%pythoncode
|
||||||
{
|
{
|
||||||
def GetNetClasses(self):
|
def GetNetClasses(self):
|
||||||
return self.GetDesignSettings().m_NetClasses
|
return self.GetDesignSettings().m_NetClasses
|
||||||
|
|
||||||
def GetCurrentNetClassName(self):
|
def GetCurrentNetClassName(self):
|
||||||
return self.GetDesignSettings().m_CurrentNetClassName
|
return self.GetDesignSettings().m_CurrentNetClassName
|
||||||
|
|
||||||
def GetViasDimensionsList(self):
|
def GetViasDimensionsList(self):
|
||||||
return self.GetDesignSettings().m_ViasDimensionsList
|
return self.GetDesignSettings().m_ViasDimensionsList
|
||||||
|
|
||||||
def GetTrackWidthList(self):
|
def GetTrackWidthList(self):
|
||||||
return self.GetDesignSettings().m_TrackWidthList
|
return self.GetDesignSettings().m_TrackWidthList
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
%extend DRAWSEGMENT
|
%extend DRAWSEGMENT
|
||||||
{
|
{
|
||||||
%pythoncode
|
%pythoncode
|
||||||
{
|
{
|
||||||
def GetShapeStr(self):
|
def GetShapeStr(self):
|
||||||
return self.ShowShape(self.GetShape())
|
return self.ShowShape(self.GetShape())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
%extend BOARD_ITEM
|
%extend BOARD_ITEM
|
||||||
{
|
{
|
||||||
%pythoncode
|
%pythoncode
|
||||||
{
|
{
|
||||||
def SetPos(self,p):
|
def SetPos(self,p):
|
||||||
self.SetPosition(p)
|
self.SetPosition(p)
|
||||||
self.SetPos0(p)
|
self.SetPos0(p)
|
||||||
|
|
||||||
def SetStartEnd(self,start,end):
|
def SetStartEnd(self,start,end):
|
||||||
self.SetStart(start)
|
self.SetStart(start)
|
||||||
self.SetStart0(start)
|
self.SetStart0(start)
|
||||||
self.SetEnd(end)
|
self.SetEnd(end)
|
||||||
self.SetEnd0(end)
|
self.SetEnd0(end)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,54 +32,64 @@
|
||||||
|
|
||||||
%inline
|
%inline
|
||||||
{
|
{
|
||||||
BOARD_ITEM* Cast_to_BOARD_ITEM(EDA_ITEM* base) { return dynamic_cast<BOARD_ITEM*>(base); }
|
BOARD_ITEM* Cast_to_BOARD_ITEM(EDA_ITEM* base) { return dynamic_cast<BOARD_ITEM*>(base); }
|
||||||
}
|
}
|
||||||
|
|
||||||
%extend BOARD_ITEM
|
%extend BOARD_ITEM
|
||||||
{
|
{
|
||||||
TEXTE_PCB* Cast_to_TEXTE_PCB() { return dynamic_cast<TEXTE_PCB*>(self); }
|
TEXTE_PCB* Cast_to_TEXTE_PCB() { return dynamic_cast<TEXTE_PCB*>(self); }
|
||||||
DIMENSION* Cast_to_DIMENSION() { return dynamic_cast<DIMENSION*>(self); }
|
DIMENSION* Cast_to_DIMENSION() { return dynamic_cast<DIMENSION*>(self); }
|
||||||
MODULE* Cast_to_MODULE() { return dynamic_cast<MODULE*>(self); }
|
MODULE* Cast_to_MODULE() { return dynamic_cast<MODULE*>(self); }
|
||||||
TEXTE_MODULE* Cast_to_TEXTE_MODULE() { return dynamic_cast<TEXTE_MODULE*>(self); }
|
TEXTE_MODULE* Cast_to_TEXTE_MODULE() { return dynamic_cast<TEXTE_MODULE*>(self); }
|
||||||
DRAWSEGMENT* Cast_to_DRAWSEGMENT() { return dynamic_cast<DRAWSEGMENT*>(self); }
|
DRAWSEGMENT* Cast_to_DRAWSEGMENT() { return dynamic_cast<DRAWSEGMENT*>(self); }
|
||||||
MARKER_PCB* Cast_to_MARKER_PCB() { return dynamic_cast<MARKER_PCB*>(self); }
|
MARKER_PCB* Cast_to_MARKER_PCB() { return dynamic_cast<MARKER_PCB*>(self); }
|
||||||
BOARD* Cast_to_BOARD() { return dynamic_cast<BOARD*>(self); }
|
BOARD* Cast_to_BOARD() { return dynamic_cast<BOARD*>(self); }
|
||||||
EDGE_MODULE* Cast_to_EDGE_MODULE() { return dynamic_cast<EDGE_MODULE*>(self); }
|
EDGE_MODULE* Cast_to_EDGE_MODULE() { return dynamic_cast<EDGE_MODULE*>(self); }
|
||||||
D_PAD* Cast_to_D_PAD() { return dynamic_cast<D_PAD*>(self); }
|
D_PAD* Cast_to_D_PAD() { return dynamic_cast<D_PAD*>(self); }
|
||||||
TRACK* Cast_to_TRACK() { return dynamic_cast<TRACK*>(self); }
|
TRACK* Cast_to_TRACK() { return dynamic_cast<TRACK*>(self); }
|
||||||
ZONE_CONTAINER* Cast_to_ZONE_CONTAINER() { return dynamic_cast<ZONE_CONTAINER*>(self);}
|
ZONE_CONTAINER* Cast_to_ZONE_CONTAINER() { return dynamic_cast<ZONE_CONTAINER*>(self);}
|
||||||
VIA* Cast_to_VIA() { return dynamic_cast<VIA*>(self); }
|
VIA* Cast_to_VIA() { return dynamic_cast<VIA*>(self); }
|
||||||
|
|
||||||
|
|
||||||
%pythoncode
|
%pythoncode
|
||||||
{
|
{
|
||||||
def Cast(self):
|
def Cast(self):
|
||||||
|
|
||||||
ct = self.GetClass()
|
ct = self.GetClass()
|
||||||
|
|
||||||
if ct=="PTEXT":
|
if ct=="PTEXT":
|
||||||
return self.Cast_to_TEXTE_PCB()
|
return self.Cast_to_TEXTE_PCB()
|
||||||
elif ct=="BOARD":
|
elif ct=="BOARD":
|
||||||
return self.Cast_to_BOARD()
|
return self.Cast_to_BOARD()
|
||||||
elif ct=="DIMENSION":
|
elif ct=="DIMENSION":
|
||||||
return self.Cast_to_DIMENSION()
|
return self.Cast_to_DIMENSION()
|
||||||
elif ct=="DRAWSEGMENT":
|
elif ct=="DRAWSEGMENT":
|
||||||
return self.Cast_to_DRAWSEGMENT()
|
return self.Cast_to_DRAWSEGMENT()
|
||||||
elif ct=="MGRAPHIC":
|
elif ct=="MGRAPHIC":
|
||||||
return self.Cast_to_EDGE_MODULE()
|
return self.Cast_to_EDGE_MODULE()
|
||||||
elif ct=="MODULE":
|
elif ct=="MODULE":
|
||||||
return self.Cast_to_MODULE()
|
return self.Cast_to_MODULE()
|
||||||
elif ct=="PAD":
|
elif ct=="PAD":
|
||||||
return self.Cast_to_D_PAD()
|
return self.Cast_to_D_PAD()
|
||||||
elif ct=="MTEXT":
|
elif ct=="MTEXT":
|
||||||
return self.Cast_to_TEXTE_MODULE()
|
return self.Cast_to_TEXTE_MODULE()
|
||||||
elif ct=="VIA":
|
elif ct=="VIA":
|
||||||
return self.Cast_to_VIA()
|
return self.Cast_to_VIA()
|
||||||
elif ct=="TRACK":
|
elif ct=="TRACK":
|
||||||
return self.Cast_to_TRACK()
|
return self.Cast_to_TRACK()
|
||||||
elif ct=="ZONE_CONTAINER":
|
elif ct=="ZONE_CONTAINER":
|
||||||
return self.Cast_to_ZONE_CONTAINER()
|
return self.Cast_to_ZONE_CONTAINER()
|
||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
}
|
|
||||||
|
|
||||||
|
def Duplicate(self):
|
||||||
|
|
||||||
|
ct = self.GetClass()
|
||||||
|
|
||||||
|
if ct=="BOARD":
|
||||||
|
return None
|
||||||
|
else:
|
||||||
|
return Cast_to_BOARD_ITEM(self.Clone()).Cast()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,40 +14,40 @@ FromUnits = FromMM
|
||||||
print "LISTING VIAS:"
|
print "LISTING VIAS:"
|
||||||
|
|
||||||
for item in pcb.GetTracks():
|
for item in pcb.GetTracks():
|
||||||
if type(item) is VIA:
|
if type(item) is VIA:
|
||||||
|
|
||||||
pos = item.GetPosition()
|
pos = item.GetPosition()
|
||||||
drill = item.GetDrillValue()
|
drill = item.GetDrillValue()
|
||||||
width = item.GetWidth()
|
width = item.GetWidth()
|
||||||
print " * Via: %s - %f/%f "%(ToUnits(pos),ToUnits(drill),ToUnits(width))
|
print " * Via: %s - %f/%f "%(ToUnits(pos),ToUnits(drill),ToUnits(width))
|
||||||
|
|
||||||
elif type(item) is TRACK:
|
elif type(item) is TRACK:
|
||||||
|
|
||||||
start = item.GetStart()
|
start = item.GetStart()
|
||||||
end = item.GetEnd()
|
end = item.GetEnd()
|
||||||
width = item.GetWidth()
|
width = item.GetWidth()
|
||||||
|
|
||||||
print " * Track: %s to %s, width %f" % (ToUnits(start),ToUnits(end),ToUnits(width))
|
print " * Track: %s to %s, width %f" % (ToUnits(start),ToUnits(end),ToUnits(width))
|
||||||
|
|
||||||
else:
|
else:
|
||||||
print "Unknown type %s" % type(item)
|
print "Unknown type %s" % type(item)
|
||||||
|
|
||||||
print ""
|
print ""
|
||||||
print "LIST DRAWINGS:"
|
print "LIST DRAWINGS:"
|
||||||
|
|
||||||
for item in pcb.GetDrawings():
|
for item in pcb.GetDrawings():
|
||||||
if type(item) is TEXTE_PCB:
|
if type(item) is TEXTE_PCB:
|
||||||
print "* Text: '%s' at %s"%(item.GetText(), item.GetPosition())
|
print "* Text: '%s' at %s"%(item.GetText(), item.GetPosition())
|
||||||
elif type(item) is DRAWSEGMENT:
|
elif type(item) is DRAWSEGMENT:
|
||||||
print "* Drawing: %s"%item.GetShapeStr() # dir(item)
|
print "* Drawing: %s"%item.GetShapeStr() # dir(item)
|
||||||
else:
|
else:
|
||||||
print type(item)
|
print type(item)
|
||||||
|
|
||||||
print ""
|
print ""
|
||||||
print "LIST MODULES:"
|
print "LIST MODULES:"
|
||||||
|
|
||||||
for module in pcb.GetModules():
|
for module in pcb.GetModules():
|
||||||
print "* Module: %s at %s"%(module.GetReference(),ToUnits(module.GetPosition()))
|
print "* Module: %s at %s"%(module.GetReference(),ToUnits(module.GetPosition()))
|
||||||
|
|
||||||
print ""
|
print ""
|
||||||
print "Ratsnest cnt:",len(pcb.GetFullRatsnest())
|
print "Ratsnest cnt:",len(pcb.GetFullRatsnest())
|
||||||
|
@ -55,12 +55,12 @@ print "track w cnt:",len(pcb.GetTrackWidthList())
|
||||||
print "via s cnt:",len(pcb.GetViasDimensionsList())
|
print "via s cnt:",len(pcb.GetViasDimensionsList())
|
||||||
|
|
||||||
print ""
|
print ""
|
||||||
print "LIST ZONES:"
|
print "LIST ZONES:", pcb.GetAreaCount()
|
||||||
|
|
||||||
for idx in range(0, pcb.GetAreaCount()):
|
for idx in range(0, pcb.GetAreaCount()):
|
||||||
zone=pcb.GetArea(idx)
|
zone=pcb.GetArea(idx)
|
||||||
print "zone:", idx, "priority:", zone.GetPriority(), "netname", zone.GetNetname()
|
print "zone:", idx, "priority:", zone.GetPriority(), "netname", zone.GetNetname()
|
||||||
|
|
||||||
print ""
|
print ""
|
||||||
print "NetClasses:", pcb.GetNetClasses().GetCount()
|
print "NetClasses:", pcb.GetNetClasses().GetCount(),
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
from pcbnew import *
|
from pcbnew import *
|
||||||
lst = FootprintEnumerate("/usr/share/kicad/modules/sockets.mod")
|
|
||||||
for name in lst:
|
lst = FootprintEnumerate("/usr/share/kicad/modules/sockets.mod")
|
||||||
m = FootprintLoad("/usr/share/kicad/modules/sockets.mod",name)
|
|
||||||
print name,"->",m.GetLibRef(), m.GetReference()
|
for name in lst:
|
||||||
for p in m.Pads():
|
m = FootprintLoad("/usr/share/kicad/modules/sockets.mod",name)
|
||||||
print "\t",p.GetPadName(),p.GetPosition(),p.GetPos0(), p.GetOffset()
|
print name,"->",m.GetLibRef(), m.GetReference()
|
||||||
|
|
||||||
|
for p in m.Pads():
|
||||||
|
print "\t",p.GetPadName(),p.GetPosition(),p.GetPos0(), p.GetOffset()
|
||||||
|
|
||||||
|
|
|
@ -43,14 +43,14 @@
|
||||||
|
|
||||||
def Add(self,item):
|
def Add(self,item):
|
||||||
|
|
||||||
itemC = item.Cast()
|
itemC = item.Cast()
|
||||||
|
|
||||||
if type(itemC) is D_PAD:
|
if type(itemC) is D_PAD:
|
||||||
item.thisown=0
|
item.thisown=0
|
||||||
self.Pads().PushBack(itemC)
|
self.Pads().PushBack(itemC)
|
||||||
elif type(itemC) in [ TEXTE_PCB, DIMENSION, TEXTE_MODULE, DRAWSEGMENT,EDGE_MODULE]:
|
elif type(itemC) in [ TEXTE_PCB, DIMENSION, TEXTE_MODULE, DRAWSEGMENT,EDGE_MODULE]:
|
||||||
item.thisown = 0
|
item.thisown = 0
|
||||||
self.GraphicalItems().PushBack(item)
|
self.GraphicalItems().PushBack(item)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -58,38 +58,36 @@
|
||||||
%pythoncode
|
%pythoncode
|
||||||
{
|
{
|
||||||
|
|
||||||
def GetPluginForPath(lpath):
|
def GetPluginForPath(lpath):
|
||||||
return IO_MGR.PluginFind(IO_MGR.LEGACY)
|
return IO_MGR.PluginFind(IO_MGR.LEGACY)
|
||||||
|
|
||||||
def FootprintEnumerate(lpath):
|
def FootprintEnumerate(lpath):
|
||||||
plug = GetPluginForPath(lpath)
|
plug = GetPluginForPath(lpath)
|
||||||
return plug.FootprintEnumerate(lpath)
|
return plug.FootprintEnumerate(lpath)
|
||||||
|
|
||||||
def FootprintLoad(lpath,name):
|
def FootprintLoad(lpath,name):
|
||||||
plug = GetPluginForPath(lpath)
|
plug = GetPluginForPath(lpath)
|
||||||
return plug.FootprintLoad(lpath,name)
|
return plug.FootprintLoad(lpath,name)
|
||||||
|
|
||||||
def FootprintSave(lpath,module):
|
def FootprintSave(lpath,module):
|
||||||
plug = GetPluginForPath(lpath)
|
plug = GetPluginForPath(lpath)
|
||||||
return plug.FootprintSave(lpath,module)
|
return plug.FootprintSave(lpath,module)
|
||||||
|
|
||||||
def FootprintDelete(lpath,name):
|
def FootprintDelete(lpath,name):
|
||||||
plug = GetPluginForPath(lpath)
|
plug = GetPluginForPath(lpath)
|
||||||
plug.FootprintDelete(lpath,name)
|
plug.FootprintDelete(lpath,name)
|
||||||
|
|
||||||
def FootprintLibCreate(lpath):
|
def FootprintLibCreate(lpath):
|
||||||
plug = GetPluginForPath(lpath)
|
plug = GetPluginForPath(lpath)
|
||||||
plug.FootprintLibCreate(lpath)
|
plug.FootprintLibCreate(lpath)
|
||||||
|
|
||||||
def FootprintLibDelete(lpath):
|
def FootprintLibDelete(lpath):
|
||||||
plug = GetPluginForPath(lpath)
|
plug = GetPluginForPath(lpath)
|
||||||
plug.FootprintLibDelete(lpath)
|
plug.FootprintLibDelete(lpath)
|
||||||
|
|
||||||
def FootprintIsWritable(lpath):
|
def FootprintIsWritable(lpath):
|
||||||
plug = GetPluginForPath(lpath)
|
plug = GetPluginForPath(lpath)
|
||||||
plug.FootprintLibIsWritable(lpath)
|
plug.FootprintLibIsWritable(lpath)
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
%{
|
%{
|
||||||
|
|
|
@ -155,7 +155,6 @@
|
||||||
%include <io_mgr.h>
|
%include <io_mgr.h>
|
||||||
%include <kicad_plugin.h>
|
%include <kicad_plugin.h>
|
||||||
|
|
||||||
|
|
||||||
%include "board.i"
|
%include "board.i"
|
||||||
%include "module.i"
|
%include "module.i"
|
||||||
%include "plugins.i"
|
%include "plugins.i"
|
||||||
|
|
|
@ -131,15 +131,13 @@ class FPCFootprintWizard(FootprintWizardPlugin):
|
||||||
module.Add(outline)
|
module.Add(outline)
|
||||||
|
|
||||||
# lower line
|
# lower line
|
||||||
outline1 = EDGE_MODULE(module)
|
outline1 = outline.Duplicate() #copy all settings from outline
|
||||||
outline1.Copy(outline) #copy all settings from outline
|
|
||||||
posy = pad_height/2 + linewidth/2 + margin
|
posy = pad_height/2 + linewidth/2 + margin
|
||||||
outline1.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, posy))
|
outline1.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, posy))
|
||||||
module.Add(outline1)
|
module.Add(outline1)
|
||||||
|
|
||||||
# around left mechanical pad (the outline around right pad is mirrored/y axix)
|
# around left mechanical pad (the outline around right pad is mirrored/y axix)
|
||||||
outline2 = EDGE_MODULE(module) # vertical segment
|
outline2 = outline.Duplicate() # vertical segment
|
||||||
outline2.Copy(outline)
|
|
||||||
yend = pad_s0_pos.y + shl_height/2 + margin
|
yend = pad_s0_pos.y + shl_height/2 + margin
|
||||||
outline2.SetStartEnd(wxPoint(xstart, posy), wxPoint( xstart, yend))
|
outline2.SetStartEnd(wxPoint(xstart, posy), wxPoint( xstart, yend))
|
||||||
module.Add(outline2)
|
module.Add(outline2)
|
||||||
|
@ -148,8 +146,7 @@ class FPCFootprintWizard(FootprintWizardPlugin):
|
||||||
outline2_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xstart, yend))
|
outline2_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xstart, yend))
|
||||||
module.Add(outline2_d)
|
module.Add(outline2_d)
|
||||||
|
|
||||||
outline3 = EDGE_MODULE(module) # horizontal segment below the pad
|
outline3 = outline.Duplicate() # horizontal segment below the pad
|
||||||
outline3.Copy(outline)
|
|
||||||
posy = yend
|
posy = yend
|
||||||
xend = pad_s0_pos.x - (shl_width/2 + linewidth + margin*2)
|
xend = pad_s0_pos.x - (shl_width/2 + linewidth + margin*2)
|
||||||
outline3.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, posy))
|
outline3.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, posy))
|
||||||
|
@ -159,37 +156,31 @@ class FPCFootprintWizard(FootprintWizardPlugin):
|
||||||
outline3_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
outline3_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
||||||
module.Add(outline3_d)
|
module.Add(outline3_d)
|
||||||
|
|
||||||
outline4 = EDGE_MODULE(module) # vertical segment at left of the pad
|
outline4 = outline.Duplicate() # vertical segment at left of the pad
|
||||||
outline4.Copy(outline)
|
|
||||||
xstart = xend
|
xstart = xend
|
||||||
yend = posy - (shl_height + linewidth + margin*2)
|
yend = posy - (shl_height + linewidth + margin*2)
|
||||||
outline4.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, yend))
|
outline4.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, yend))
|
||||||
module.Add(outline4)
|
module.Add(outline4)
|
||||||
outline4_d = EDGE_MODULE(module) # right pad side
|
outline4_d = outline.Duplicate() # right pad side
|
||||||
outline4_d.Copy(outline4)
|
|
||||||
outline4_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
outline4_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
||||||
module.Add(outline4_d)
|
module.Add(outline4_d)
|
||||||
|
|
||||||
outline5 = EDGE_MODULE(module) # horizontal segment above the pad
|
outline5 = outline.Duplicate() # horizontal segment above the pad
|
||||||
outline5.Copy(outline)
|
|
||||||
xstart = xend
|
xstart = xend
|
||||||
xend = - pad_pitch*0.5-offsetX
|
xend = - pad_pitch*0.5-offsetX
|
||||||
posy = yend
|
posy = yend
|
||||||
outline5.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, yend))
|
outline5.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, yend))
|
||||||
module.Add(outline5)
|
module.Add(outline5)
|
||||||
outline5_d = EDGE_MODULE(module) # right pad side
|
outline5_d = outline.Duplicate() # right pad side
|
||||||
outline5_d.Copy(outline5)
|
|
||||||
outline5_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
outline5_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
||||||
module.Add(outline5_d)
|
module.Add(outline5_d)
|
||||||
|
|
||||||
outline6 = EDGE_MODULE(module) # vertical segment above the pad
|
outline6 = outline.Duplicate() # vertical segment above the pad
|
||||||
outline6.Copy(outline)
|
|
||||||
xstart = xend
|
xstart = xend
|
||||||
yend = -pad_height/2 - linewidth/2 - margin
|
yend = -pad_height/2 - linewidth/2 - margin
|
||||||
outline6.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, yend))
|
outline6.SetStartEnd(wxPoint(xstart, posy), wxPoint( xend, yend))
|
||||||
module.Add(outline6)
|
module.Add(outline6)
|
||||||
outline6_d = EDGE_MODULE(module) # right pad side
|
outline6_d = outline.Duplicate() # right pad side
|
||||||
outline6_d.Copy(outline6)
|
|
||||||
outline6_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
outline6_d.SetStartEnd(wxPoint(-xstart, posy), wxPoint( -xend, yend))
|
||||||
module.Add(outline6_d)
|
module.Add(outline6_d)
|
||||||
|
|
||||||
|
|
|
@ -3,9 +3,9 @@ import pcbnew
|
||||||
pcb = pcbnew.GetBoard()
|
pcb = pcbnew.GetBoard()
|
||||||
|
|
||||||
for m in pcb.GetModules():
|
for m in pcb.GetModules():
|
||||||
print m.GetPosition()
|
print m.GetPosition()
|
||||||
for p in m.GetPads()
|
for p in m.Pads():
|
||||||
print "p=>",p.GetPosition(),p.GetPadName()
|
print "p=>",p.GetPosition(),p.GetPadName()
|
||||||
print p.GetPosition()
|
print p.GetPosition()
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,6 @@ import pcbnew
|
||||||
pcb = pcbnew.GetBoard()
|
pcb = pcbnew.GetBoard()
|
||||||
|
|
||||||
for m in pcb.GetModules():
|
for m in pcb.GetModules():
|
||||||
print m.GetReference(),"(",m.GetValue(),") at ", m.GetPosition()
|
print m.GetReference(),"(",m.GetValue(),") at ", m.GetPosition()
|
||||||
for p in m.GetPads()
|
for p in m.Pads():
|
||||||
print " pad",p.GetPadName(), "at",p.GetPosition()
|
print " pad",p.GetPadName(), "at",p.GetPosition()
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,7 @@
|
||||||
|
|
||||||
%include <std_vector.i>
|
%include <std_vector.i>
|
||||||
%include <std_string.i>
|
%include <std_string.i>
|
||||||
|
%include <std_map.i>
|
||||||
|
|
||||||
/* ignore some constructors of EDA_ITEM that will make the build fail */
|
/* ignore some constructors of EDA_ITEM that will make the build fail */
|
||||||
|
|
||||||
|
@ -56,19 +57,19 @@
|
||||||
|
|
||||||
%{
|
%{
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <dlist.h>
|
#include <dlist.h>
|
||||||
#include <base_struct.h>
|
#include <base_struct.h>
|
||||||
#include <common.h>
|
#include <common.h>
|
||||||
#include <wx_python_helpers.h>
|
#include <wx_python_helpers.h>
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#include <class_title_block.h>
|
#include <class_title_block.h>
|
||||||
#include <class_colors_design_settings.h>
|
#include <class_colors_design_settings.h>
|
||||||
#include <class_marker_base.h>
|
#include <class_marker_base.h>
|
||||||
#include <eda_text.h>
|
#include <eda_text.h>
|
||||||
#include <convert_from_iu.h>
|
#include <convert_from_iu.h>
|
||||||
#include <convert_to_biu.h>
|
#include <convert_to_biu.h>
|
||||||
|
|
||||||
%}
|
%}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,162 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Small helper script for patching/compiling wxWidgets/wxPython on OSX
|
||||||
|
#
|
||||||
|
# Params
|
||||||
|
# $1 wxWidgets/wxPython source folder (relative to current dir)
|
||||||
|
# $2 Target bin folder
|
||||||
|
# $3 KiCad source folder (relative to current dir)
|
||||||
|
# $4 Make options (e.g., "-j4")
|
||||||
|
|
||||||
|
createPaths() {
|
||||||
|
echo "*** Creating/wiping build and bin folder..."
|
||||||
|
|
||||||
|
rm -rf wx-build
|
||||||
|
rm -rf $1
|
||||||
|
mkdir wx-build
|
||||||
|
mkdir $1
|
||||||
|
}
|
||||||
|
|
||||||
|
doPatch() {
|
||||||
|
cwd=$(pwd)
|
||||||
|
cd $1
|
||||||
|
|
||||||
|
patchcmd="patch -p0 -RN --dry-run < $cwd/$2"
|
||||||
|
eval $patchcmd &> /dev/null
|
||||||
|
if [ $? -eq 0 ];
|
||||||
|
then
|
||||||
|
echo "*** Patch '$2' already applied, skipping..."
|
||||||
|
else
|
||||||
|
echo "*** Applying patch '$2'..."
|
||||||
|
|
||||||
|
patch -p0 < $cwd/$2
|
||||||
|
if [ $? -ne 0 ];
|
||||||
|
then
|
||||||
|
cd $cwd
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $cwd
|
||||||
|
}
|
||||||
|
|
||||||
|
wxWidgets_configure() {
|
||||||
|
echo "*** Configuring wxWidgets..."
|
||||||
|
cwd=$(pwd)
|
||||||
|
cd wx-build
|
||||||
|
|
||||||
|
../$1/configure \
|
||||||
|
--prefix=$cwd/$2 \
|
||||||
|
--with-opengl \
|
||||||
|
--enable-aui \
|
||||||
|
--enable-utf8 \
|
||||||
|
--enable-html \
|
||||||
|
--enable-stl \
|
||||||
|
--with-libjpeg=builtin \
|
||||||
|
--with-libpng=builtin \
|
||||||
|
--with-regex=builtin \
|
||||||
|
--with-libtiff=builtin \
|
||||||
|
--with-zlib=builtin \
|
||||||
|
--with-expat=builtin \
|
||||||
|
--without-liblzma \
|
||||||
|
--with-macosx-version-min=10.5 \
|
||||||
|
--enable-universal-binary=i386,x86_64 \
|
||||||
|
CPPFLAGS="-stdlib=libstdc++" \
|
||||||
|
LDFLAGS="-stdlib=libstdc++" \
|
||||||
|
CC=clang \
|
||||||
|
CXX=clang++
|
||||||
|
if [ $? -ne 0 ];
|
||||||
|
then
|
||||||
|
cd ..
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
wxWidgets_buildInst() {
|
||||||
|
echo "*** Building wxWidgets..."
|
||||||
|
cd wx-build
|
||||||
|
|
||||||
|
make $1 install
|
||||||
|
if [ $? -ne 0 ];
|
||||||
|
then
|
||||||
|
cd ..
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
wxPython_buildInst() {
|
||||||
|
cwd=$(pwd)
|
||||||
|
cd $1/wxPython
|
||||||
|
|
||||||
|
# build params
|
||||||
|
WXPYTHON_BUILD_OPTS="WX_CONFIG=$cwd/$2/bin/wx-config \
|
||||||
|
BUILD_BASE=$cwd/wx-build \
|
||||||
|
UNICODE=1 \
|
||||||
|
WXPORT=osx_cocoa"
|
||||||
|
|
||||||
|
# build
|
||||||
|
python setup.py build_ext $WXPYTHON_BUILD_OPTS
|
||||||
|
if [ $? -ne 0 ];
|
||||||
|
then
|
||||||
|
cd $cwd
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# install
|
||||||
|
python setup.py install --prefix=$cwd/$2 $WXPYTHON_BUILD_OPTS
|
||||||
|
if [ $? -ne 0 ];
|
||||||
|
then
|
||||||
|
cd $cwd
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $cwd
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# check parameters
|
||||||
|
if [ "$#" -lt 3 ];
|
||||||
|
then
|
||||||
|
echo "OSX wxWidgets/wxPython build script"
|
||||||
|
echo
|
||||||
|
echo "Usage:"
|
||||||
|
echo " osx_build_wx.sh <src> <bin> <kicad> <makeopts>"
|
||||||
|
echo " <src> wxWidgets/wxPython source folder"
|
||||||
|
echo " <bin> Destination folder"
|
||||||
|
echo " <kicad> KiCad folder"
|
||||||
|
echo " <makeopts> Optional: make options for building wxWidgets (e.g., -j4)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# create build paths
|
||||||
|
createPaths "$2"
|
||||||
|
|
||||||
|
# patch wxWidgets sources
|
||||||
|
echo "*** Patching wxWidgets..."
|
||||||
|
doPatch "$1" "$3/patches/wxwidgets-3.0.0_macosx.patch"
|
||||||
|
doPatch "$1" "$3/patches/wxwidgets-3.0.0_macosx_bug_15908.patch"
|
||||||
|
doPatch "$1" "$3/patches/wxwidgets-3.0.0_macosx_soname.patch"
|
||||||
|
|
||||||
|
# configure and build wxWidgets
|
||||||
|
wxWidgets_configure "$1" "$2"
|
||||||
|
wxWidgets_buildInst "$4"
|
||||||
|
|
||||||
|
# check if source is wxPython
|
||||||
|
if [ -d $1/wxPython ];
|
||||||
|
then
|
||||||
|
echo "*** Source is wxPython, now building wxPython stuff..."
|
||||||
|
wxPython_buildInst "$1" "$2"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# remove build dir
|
||||||
|
echo "*** Removing build folder"
|
||||||
|
rm -rf wx-build
|
||||||
|
|
||||||
|
# done
|
||||||
|
echo "*** Finished building!"
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,13 @@ target_link_libraries( dxf2idf lib_dxf idf3 ${wxWidgets_LIBRARIES} )
|
||||||
|
|
||||||
target_link_libraries( idf2vrml idf3 ${OPENGL_LIBRARIES} ${wxWidgets_LIBRARIES} )
|
target_link_libraries( idf2vrml idf3 ${OPENGL_LIBRARIES} ${wxWidgets_LIBRARIES} )
|
||||||
|
|
||||||
install( TARGETS idfcyl idfrect dxf2idf idf2vrml
|
if( APPLE )
|
||||||
DESTINATION ${KICAD_BIN}
|
# puts binaries into the *.app bundle while linking
|
||||||
COMPONENT binary )
|
set_target_properties( idfcyl idfrect dxf2idf idf2vrml PROPERTIES
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY ${OSX_BUNDLE_BUILD_BIN_DIR}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
install( TARGETS idfcyl idfrect dxf2idf idf2vrml
|
||||||
|
DESTINATION ${KICAD_BIN}
|
||||||
|
COMPONENT binary )
|
||||||
|
endif()
|
||||||
|
|
Loading…
Reference in New Issue