SlideShare a Scribd company logo
1 of 45
FOR MAYA
Instruction of Installation guide
整理王. JP
1. Compile to sip with PyQt5.
2. How to setting up When you using PyCharm.
3. WING IDE
Overview
List of Equipment.
PyQt5 build
Python 2.7.11
SIP 4.19.4
PyQt gpl 5.9.1
Install script as command script
Visual studio 2015 or 2017 as visual studio command prompt.
PyCharm IDE setup for Maya
MayaCharm
python connection of open port script
python connection of remote debug open port script
VSCode Setup for Maya
PTVSD 3.0.0
VSCode python extension
Overview
1. COMPILE TO SIP WITH PYQT5.
Install python version of 2.7.11
• https://www.python.org/downloads/release/python-2711/
1. Compile to sip with PyQt5.
Make Symbolic python.exe  mayapy.exe
1. Compile to sip with PyQt5.
1. Run the command console as administrator.
2. Go to “C:Program FilesAutodeskMaya2018bin”
3. Command : mklink python.exe mayapy.exe
Install to Autodesk® Maya 2018 - Developer Kit
(aka devkit)
• https://apps.autodesk.com/MAYA/en/Detail/Index?id=552549163637
6351277&appLang=en&os=Win64&autostart=true
1. Compile to sip with PyQt5.
Install to Autodesk® Maya 2018 - Developer Kit
(aka devkit)
• List of Replacement directory
• All directory of devkitBase to MayaRoot
1. Compile to sip with PyQt5.
Install to Autodesk® Maya 2018 - Developer Kit
(aka devkit)
• C:Program FilesAutodeskMaya2018devkit
1. Compile to sip with PyQt5.
Modify to qt.conf
C:Program
FilesAutodeskMaya2018binqt.conf
1. Compile to sip with PyQt5.
Your Maya environments path
https://knowledge.autodesk.com/support/maya/learn-
explore/caas/CloudHelp/cloudhelp/2016/ENU/Maya/files/GUID-228CCA33-4AFE-4380-8C3D-
18D23F7EAC72-htm.html
MAYA_LOCATION
C:Program FilesAutodeskMaya2018
1. Compile to sip with PyQt5.
Building to SIP
• Check to exist this bat file as vcvarsall.bat
1. Compile to sip with PyQt5.
Create setup.bat
1. Compile to sip with PyQt5.
@echo off
set MAYAVERSION=2018
set ADSKQTVERSION=5.6.1
set SIPVERSION=4.19.4
set PYQTVERSION=5.9.1
set MAYADRIVE=m:
set BUILDDRIVE=v:
if exist %MAYADRIVE%nul subst %MAYADRIVE% /d
subst %MAYADRIVE% "C:Program FilesAutodeskMaya%MAYAVERSION%"
set MAYA_LOCATION=%MAYADRIVE%
set MAYAPYQTBUILD=%~dp0
rem Removing trailing 
set MAYAPYQTBUILD=%MAYAPYQTBUILD:~0,-1%
if exist %BUILDDRIVE%nul subst %BUILDDRIVE% /d
subst %BUILDDRIVE% "%MAYAPYQTBUILD%"
set SIPDIR=%BUILDDRIVE%sip-%SIPVERSION%
set PYQTDIR=%BUILDDRIVE%PyQt5_gpl-%PYQTVERSION%
rem set ADSKQTDIR=%BUILDDRIVE%qt-%ADSKQTVERSION%
set QTDIR=%MAYA_LOCATION%
set PATH=%QTDIR%bin;%PATH%
set MSVC_VERSION=2015
set MSVC_DIR=C:Program Files (x86)Microsoft Visual Studio 14.0
set QMAKESPEC=%QTDIR%mkspecswin32-msvc%MSVC_VERSION%
set _QMAKESPEC_=win32-msvc%MSVC_VERSION%
if ["%LIBPATH%"]==[""] call "%MSVC_DIR%VCvcvarsall" amd64
set INCLUDE=%INCLUDE%;%MAYA_LOCATION%includepython2.7
set LIB=%LIB%;%MAYA_LOCATION%lib
Building to SIP
• Download to sip-4.19.4
• https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.4/
• Create new directory as name of __sdkext into your “D” drive.
 D:__sdkext
 Uncompress sip-4.19.4 into __sdkext foler.
1. Compile to sip with PyQt5.
Building to SIP
• Create sip.bat
1. Compile to sip with PyQt5.
@echo off
set XXX=%~dp0
if ["%MAYAPYQTBUILD%"]==[""] call
"%XXX%setup.bat"
pushd %SIPDIR%
rem "%MAYA_LOCATION%binmayapy" configure-
ng.py --spec %_QMAKESPEC_%
"%MAYA_LOCATION%binmayapy" configure.py
nmake
nmake install
popd
Building to SIP
• Install to Visual studio 2015 or 2017
• Run to visual studio command prompt as administrator mode.
1. Compile to sip with PyQt5.
Building to SIP
• Go to your __sdkext in command prompt.
1. Compile to sip with PyQt5.
Building to SIP
• Execute setup.bat in command prompt
• Execute sip.bat
1. Compile to sip with PyQt5.
• Checking to import sip in Maya2018
Building to PyQt5
• Download PyQt5 source code.
• https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.9.1/
1. Compile to sip with PyQt5.
Building to PyQt5
• Create pyqt.bat
1. Compile to sip with PyQt5.
@echo off
set XXX=%~dp0
if ["%MAYAPYQTBUILD%"]==[""] call "%XXX%setup.bat"
set QMAKESPEC=%QTDIR%mkspecs%_QMAKESPEC_%
if not exist "%QMAKESPEC%qmake.conf" (
echo "You need to uncompress %MAYA_LOCATION%mkspecsqt-5.6.1_vc14-mkspecs.tar.gz !"
goto end
)
if not exist "%MAYA_LOCATION%includeQtQtCoreqdir.h" (
echo "You need to uncompress %MAYA_LOCATION%includeqt-5.6.1_vc14-include.tar.gz in %MAYA_LOCATION%includeQt !"
goto end
)
findstr /L /C:"Headers=include/Qt" "%MAYA_LOCATION%binqt.conf" >nul 2>&1
if ERRORLEVEL 1 (
echo "You need to edit %MAYA_LOCATION%binqt.conf to use 'Headers=include/Qt'"
goto end
)
findstr /L /C:"-lqtmain -lshell32" "%QTDIR%mkspecscommonmsvc-desktop.conf" >nul 2>&1
if ERRORLEVEL 1 (
echo "You need to edit %QTDIR%mkspecscommonmsvc-desktop.conf to use 'QMAKE_LIBS_QT_ENTRY = -lqtmain -lshell32'"
goto end
)
if not exist "%MAYA_LOCATION%includeQtqtnfc.disabled" (
echo "You need to rename %MAYA_LOCATION%includeQtqtnfc to %MAYA_LOCATIONincludeQtqtnfc.disabled"
goto end
)
pushd %PYQTDIR%
rem "%MAYA_LOCATION%binmayapy" configure-ng.py --spec %_QMAKESPEC_%
"%MAYA_LOCATION%binmayapy" configure.py --spec %QMAKESPEC% LIBDIR_QT="%QTDIR%lib" INCDIR_QT="%QTDIR%includeQt" MOC="%QTDIR%binmoc.exe" --
sip="%QTDIR%Pythonsip.exe" --sip-incdir="%QTDIR%Pythoninclude" -w --no-designer-plugin
nmake
nmake install
popd
:end
Building to PyQt5
• Must check item.
1. Compile to sip with PyQt5.
"You need to rename %MAYA_LOCATION%includeQtqtnfc to %MAYA_LOCATIONincludeQtqtnfc.disabled"
C:Program FilesAutodeskMaya2018includeQtqtnfc
Folder name to qtfnc.disabled
"You need to edit %QTDIR%mkspecscommonmsvc-desktop.conf to use 'QMAKE_LIBS_QT_ENTRY = -lqtmain -lshell32'"
Building to PyQt5
• Build to PyQt5 via visual studio command prompt.
• Asking to license about python then just type to “yes”.
1. Compile to sip with PyQt5.
Building to PyQt5
• Testing PyQt5 in Maya2018.
1. Compile to sip with PyQt5.
• Testing PyQt5 in Maya2018.
1. Compile to sip with PyQt5.
import sys
from PyQt5.QtWidgets import (QWidget, QToolTip, QPushButton)
from PyQt5.QtGui import QFont
class Example(QWidget):
def __init__(self):
super(Example,self).__init__()
self.initUI()
def initUI(self):
QToolTip.setFont(QFont('SansSerif', 10))
self.setToolTip('This is a <b>QWidget</b> widget')
btn = QPushButton('Button', self)
btn.setToolTip('This is a <b>QPushButton</b> widget')
btn.resize(btn.sizeHint())
btn.move(50, 50)
self.setGeometry(300, 300, 300, 200)
self.setWindowTitle('Tooltips')
self.show()
ex = Example()
2. HOW TO SETTING UP WHEN YOU USING
PYCHARM.
Connecting to port
• import maya.cmds as cmds
• if not cmds.commandPort(':4434', q=True):
• cmds.commandPort(n=':4434')
2. How to setting up When you using pycharm.
Installing to MAYA CHARM.
Using Alt+F7 to open properties window then go to Plugins.
Go to Browse repositories.
Searching to MayaCharm then install.
2. How to setting up When you using pycharm.
Copy script then using into the Maya.
import maya.cmds as cmds
if not cmds.commandPort(':4434', q=True):
cmds.commandPort(n=':4434')
2. How to setting up When you using pycharm.
Select to interpreter from maya bin folder as python.exe
 Already We make link via mklink command between python and mayapy
2. How to setting up When you using pycharm.
Additional setup your interpreter.
 Go to More… then organizing to Interpreter path like below.
2. How to setting up When you using PyCharm.
MayaCharm Python Remote debugger setting.
Go to “Run” then open to “Edit Configurations…”
2. How to setting up When you using PyCharm.
MayaCharm Python Remote debugger setting.
Adding to new configuration of MayaCharm Debugger
2. How to setting up When you using PyCharm.
MayaCharm Python Remote debugger setting.
Execute Debug Maya2018 via Alt + F5
2. How to setting up When you using PyCharm.
3. WING IDE
Overview
Install Wind-ide
• https://wingware.com/
3. WING IDE FOR MAYA.
Install Wind-ide
3. WING IDE FOR MAYA.
1. Click to lower left side small bug icon then enable to Accept debug connections.
2. Execute connection code via simple python code below.
3. WING IDE FOR MAYA.
import wingdbstub
reload(wingdbstub)
try:
wingdbstub.Ensure()
print 'Connected to WingIDE 6.0'
except ValueError:
print 'Could NOT connect to wingIDE'
Create server script into your %MAYA_SCRIPT_PATH%
mayaWingServer.py
3. WING IDE FOR MAYA.
import sys
import socket
import threading
import maya.utils as mu
import maya.OpenMaya as om
import executeWingCode
#Global variables
PORT = 6000 # Needs to be the same value as authored in wingHotkeys.py below.
SIZE = 1024
BACKLOG = 5
#Functions
def processDataInMaya(data):
try:
# If we don't evaluate in maya.util.executeInMainThreadWithResult(), Maya can crash, and that's no good.
mu.executeInMainThreadWithResult(executeWingCode.main, data)
except Exception, e:
om.MGlobal.displayError('Encountered exception: %s'%e)
def server(processFunc=processDataInMaya, port=PORT, backlog=BACKLOG, size=SIZE):
host = ''
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
s.bind((host,port))
except:
print 'Tried to open port %s, but failed: Its probably already openn'%port
return
s.listen(backlog)
print 'Starting Python server, listening on port %s...n'%port
while True:
client, address = s.accept() # client is a socket object
data = client.recv(size)
if data:
processFunc(data)
client.close()
def startServer():
threading.Thread(target=server).start()
Start python server via simple python script at below.
3. WING IDE FOR MAYA.
import maya.cmds as cmds
cmds.evalDeferred('import mayaWingServer; mayaWingServer.startServer()', lowestPriority=True)
Configuration of User hot key
3. WING IDE FOR MAYA.
Create wingHotkeys.py into ‘C:Users<your_username>AppDataRoamingWing IDE 6scripts‘
import wingapi
import socket
import os
import tempfile
def getWingText():
editor = wingapi.gApplication.GetActiveEditor()
if editor is None:
return
doc = editor.GetDocument()
start, end = editor.GetSelection()
txt = doc.GetCharRange(start, end)
return txt
def send_to_maya(language):
# The port the sever is listening on in mayaWingServer.py :
commandPort = 6000
if language != 'mel' and language != 'python':
raise ValueError('Expecting either 'mel' or 'python'')
txt = getWingText()
if language == 'mel':
if not txt.endswith(';'):
txt += ';'
# Cross-platform way to get a temp dir:
tempDir = tempfile.gettempdir()
tempFile = os.path.join(tempDir, 'wingData.txt')
f = open(tempFile, 'w')
f.write(txt)
f.close()
mSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # works in 2013...
# Now ping Maya over the command-port
try:
mSocket.connect(('localhost', commandPort)) # 2016, mac
# Send our code to Maya:
# It is intercepted via the function processDataInMaya(), created via mayaWingServer.py
mSocket.send(language)
except Exception, e:
print 'Send to Maya fail:', e
mSocket.close()
def python_to_maya():
send_to_maya('python')
def mel_to_maya():
send_to_maya('mel')
Configuration of User hot key
3. WING IDE FOR MAYA.
Create executeWingCode.py into %MAYA_SCRIPT_PATH%
import __main__
import os
import tempfile
import maya.OpenMaya as om
def main(codeType):
# Cross-platform way to get a temp dir:
tempDir = tempfile.gettempdir()
tempFile = os.path.join(tempDir, 'wingData.txt').replace('', '/')
if os.access(tempFile , os.F_OK):
# Print the lines from the file in Maya:
with open(tempFile, 'r') as f:
for line in f.readlines():
print line.rstrip()
print 'n',
if codeType == 'python':
# execute the file contents in Maya:
with open(tempFile , 'r') as f:
exec(f, __main__.__dict__, __main__.__dict__)
elif codeType == 'mel':
melCmd = 'source %s'%tempFile
om.MGlobal.executeCommand(melCmd, True, True)
else:
print 'No Wing-generated temp file exists: ' + tempFile
Configuration of User hot key
3. WING IDE FOR MAYA.
Go to Keyboard Personality -> Configure Tab Key…
Press to Insert then set up to Key with Command.
Command is ‘python_to_maya’
Configuration of User hot key
3. WING IDE FOR MAYA.
Go to Maya command line to type to code at below because When you receive from Wing-Ide that must open port local
host with port of 6000.
cmds.commandPort(name="127.0.0.1:6000", close=True, echoOutput=True)
cmds.commandPort(name="127.0.0.1:6000", close=True, echoOutput=True)
Closing port command at below
Configuration of User hot key
3. WING IDE FOR MAYA.
Execution test
import maya.cmds as cmds
cmds.polySphere(r=5)
Auto Complete.
3. WING IDE FOR MAYA.
Go to ‘Edit > Preferences > Source Analysis’
In the ‘Interface File Path‘, add the ‘pi‘ folder you find inside the pymel you just extracted. TO be
precise, it can be found in ’devkit/other/pymel/extras/completion/py’. For added measure, I added
both sub-folders inside the pi folder as well.

More Related Content

What's hot

Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...
Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...
Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...OpenCredo
 
Adobe AEM Maintenance - Customer Care Office Hours
Adobe AEM Maintenance - Customer Care Office HoursAdobe AEM Maintenance - Customer Care Office Hours
Adobe AEM Maintenance - Customer Care Office HoursAndrew Khoury
 
Velocity 2015 linux perf tools
Velocity 2015 linux perf toolsVelocity 2015 linux perf tools
Velocity 2015 linux perf toolsBrendan Gregg
 
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...HostedbyConfluent
 
Tuning TCP and NGINX on EC2
Tuning TCP and NGINX on EC2Tuning TCP and NGINX on EC2
Tuning TCP and NGINX on EC2Chartbeat
 
Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...
Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...
Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...HostedbyConfluent
 
Monitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapMonitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapPadraig O'Sullivan
 
44CON London 2015: NTFS Analysis with PowerForensics
44CON London 2015: NTFS Analysis with PowerForensics44CON London 2015: NTFS Analysis with PowerForensics
44CON London 2015: NTFS Analysis with PowerForensicsJared Atkinson
 
Ansible with oci
Ansible with ociAnsible with oci
Ansible with ociDonghuKIM2
 
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Fred Posner
 
Understanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and RaftUnderstanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and RaftHitoshi Mitake
 
Introduction to Apache Airflow
Introduction to Apache AirflowIntroduction to Apache Airflow
Introduction to Apache Airflowmutt_data
 
Tricks every ClickHouse designer should know, by Robert Hodges, Altinity CEO
Tricks every ClickHouse designer should know, by Robert Hodges, Altinity CEOTricks every ClickHouse designer should know, by Robert Hodges, Altinity CEO
Tricks every ClickHouse designer should know, by Robert Hodges, Altinity CEOAltinity Ltd
 
LISA2019 Linux Systems Performance
LISA2019 Linux Systems PerformanceLISA2019 Linux Systems Performance
LISA2019 Linux Systems PerformanceBrendan Gregg
 
Intro to Airflow: Goodbye Cron, Welcome scheduled workflow management
Intro to Airflow: Goodbye Cron, Welcome scheduled workflow managementIntro to Airflow: Goodbye Cron, Welcome scheduled workflow management
Intro to Airflow: Goodbye Cron, Welcome scheduled workflow managementBurasakorn Sabyeying
 
Container Performance Analysis
Container Performance AnalysisContainer Performance Analysis
Container Performance AnalysisBrendan Gregg
 
Installation et configuration d'apache tomcat
Installation et configuration d'apache tomcatInstallation et configuration d'apache tomcat
Installation et configuration d'apache tomcatManassé Achim kpaya
 
Lecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinksLecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinksMarcus Denker
 
MySQL Performance Schema in 20 Minutes
 MySQL Performance Schema in 20 Minutes MySQL Performance Schema in 20 Minutes
MySQL Performance Schema in 20 MinutesSveta Smirnova
 

What's hot (20)

Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...
Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...
Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...
 
Adobe AEM Maintenance - Customer Care Office Hours
Adobe AEM Maintenance - Customer Care Office HoursAdobe AEM Maintenance - Customer Care Office Hours
Adobe AEM Maintenance - Customer Care Office Hours
 
Velocity 2015 linux perf tools
Velocity 2015 linux perf toolsVelocity 2015 linux perf tools
Velocity 2015 linux perf tools
 
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
 
Tuning TCP and NGINX on EC2
Tuning TCP and NGINX on EC2Tuning TCP and NGINX on EC2
Tuning TCP and NGINX on EC2
 
Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...
Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...
Real-time Data Ingestion from Kafka to ClickHouse with Deterministic Re-tries...
 
Monitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapMonitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTap
 
44CON London 2015: NTFS Analysis with PowerForensics
44CON London 2015: NTFS Analysis with PowerForensics44CON London 2015: NTFS Analysis with PowerForensics
44CON London 2015: NTFS Analysis with PowerForensics
 
Ansible with oci
Ansible with ociAnsible with oci
Ansible with oci
 
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
 
Understanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and RaftUnderstanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and Raft
 
Introduction to Apache Airflow
Introduction to Apache AirflowIntroduction to Apache Airflow
Introduction to Apache Airflow
 
Tricks every ClickHouse designer should know, by Robert Hodges, Altinity CEO
Tricks every ClickHouse designer should know, by Robert Hodges, Altinity CEOTricks every ClickHouse designer should know, by Robert Hodges, Altinity CEO
Tricks every ClickHouse designer should know, by Robert Hodges, Altinity CEO
 
LISA2019 Linux Systems Performance
LISA2019 Linux Systems PerformanceLISA2019 Linux Systems Performance
LISA2019 Linux Systems Performance
 
Intro to Airflow: Goodbye Cron, Welcome scheduled workflow management
Intro to Airflow: Goodbye Cron, Welcome scheduled workflow managementIntro to Airflow: Goodbye Cron, Welcome scheduled workflow management
Intro to Airflow: Goodbye Cron, Welcome scheduled workflow management
 
Alfresco Certificates
Alfresco Certificates Alfresco Certificates
Alfresco Certificates
 
Container Performance Analysis
Container Performance AnalysisContainer Performance Analysis
Container Performance Analysis
 
Installation et configuration d'apache tomcat
Installation et configuration d'apache tomcatInstallation et configuration d'apache tomcat
Installation et configuration d'apache tomcat
 
Lecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinksLecture: Advanced Reflection. MetaLinks
Lecture: Advanced Reflection. MetaLinks
 
MySQL Performance Schema in 20 Minutes
 MySQL Performance Schema in 20 Minutes MySQL Performance Schema in 20 Minutes
MySQL Performance Schema in 20 Minutes
 

Similar to Python maya 2018 setup note

Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)Yuriy Senko
 
5 steps for successful automation with Hiptest
5 steps for  successful automation with Hiptest5 steps for  successful automation with Hiptest
5 steps for successful automation with HiptestCommunity Manager @Hiptest
 
Docker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamDocker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamRachid Zarouali
 
Docker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamDocker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamDocker, Inc.
 
DevNet Associate : Python introduction
DevNet Associate : Python introductionDevNet Associate : Python introduction
DevNet Associate : Python introductionJoel W. King
 
Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014biicode
 
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017MarcinStachniuk
 
OpenStack How To - PyLadies ATX
OpenStack How To - PyLadies ATXOpenStack How To - PyLadies ATX
OpenStack How To - PyLadies ATXAnne Gentle
 
Pyramid Deployment and Maintenance
Pyramid Deployment and MaintenancePyramid Deployment and Maintenance
Pyramid Deployment and MaintenanceJazkarta, Inc.
 
Kubernetes 101 and Fun
Kubernetes 101 and FunKubernetes 101 and Fun
Kubernetes 101 and FunQAware GmbH
 
Kubernetes best practices
Kubernetes best practicesKubernetes best practices
Kubernetes best practicesBill Liu
 
[English][Test Girls] Zero to Hero: Start Test automation with Cypress
[English][Test Girls] Zero to Hero: Start Test automation with Cypress[English][Test Girls] Zero to Hero: Start Test automation with Cypress
[English][Test Girls] Zero to Hero: Start Test automation with CypressTest Girls
 
Deploying Symfony | symfony.cat
Deploying Symfony | symfony.catDeploying Symfony | symfony.cat
Deploying Symfony | symfony.catPablo Godel
 
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018Amazon Web Services
 
Improve your Java Environment with Docker
Improve your Java Environment with DockerImprove your Java Environment with Docker
Improve your Java Environment with DockerHanoiJUG
 
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Annie Huang
 
Automate Your Automation | DrupalCon Vienna
Automate Your Automation | DrupalCon ViennaAutomate Your Automation | DrupalCon Vienna
Automate Your Automation | DrupalCon ViennaPantheon
 

Similar to Python maya 2018 setup note (20)

Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)
 
Pyramid deployment
Pyramid deploymentPyramid deployment
Pyramid deployment
 
5 steps for successful automation with Hiptest
5 steps for  successful automation with Hiptest5 steps for  successful automation with Hiptest
5 steps for successful automation with Hiptest
 
Docker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamDocker to the Rescue of an Ops Team
Docker to the Rescue of an Ops Team
 
Docker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamDocker to the Rescue of an Ops Team
Docker to the Rescue of an Ops Team
 
DevNet Associate : Python introduction
DevNet Associate : Python introductionDevNet Associate : Python introduction
DevNet Associate : Python introduction
 
Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014
 
Optimizing Your CI Pipelines
Optimizing Your CI PipelinesOptimizing Your CI Pipelines
Optimizing Your CI Pipelines
 
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
 
OpenStack How To - PyLadies ATX
OpenStack How To - PyLadies ATXOpenStack How To - PyLadies ATX
OpenStack How To - PyLadies ATX
 
Pyramid Deployment and Maintenance
Pyramid Deployment and MaintenancePyramid Deployment and Maintenance
Pyramid Deployment and Maintenance
 
Kubernetes 101 and Fun
Kubernetes 101 and FunKubernetes 101 and Fun
Kubernetes 101 and Fun
 
Kubernetes 101 and Fun
Kubernetes 101 and FunKubernetes 101 and Fun
Kubernetes 101 and Fun
 
Kubernetes best practices
Kubernetes best practicesKubernetes best practices
Kubernetes best practices
 
[English][Test Girls] Zero to Hero: Start Test automation with Cypress
[English][Test Girls] Zero to Hero: Start Test automation with Cypress[English][Test Girls] Zero to Hero: Start Test automation with Cypress
[English][Test Girls] Zero to Hero: Start Test automation with Cypress
 
Deploying Symfony | symfony.cat
Deploying Symfony | symfony.catDeploying Symfony | symfony.cat
Deploying Symfony | symfony.cat
 
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
 
Improve your Java Environment with Docker
Improve your Java Environment with DockerImprove your Java Environment with Docker
Improve your Java Environment with Docker
 
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
 
Automate Your Automation | DrupalCon Vienna
Automate Your Automation | DrupalCon ViennaAutomate Your Automation | DrupalCon Vienna
Automate Your Automation | DrupalCon Vienna
 

More from Lee Jungpyo

X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018Lee Jungpyo
 
天谕手游图形版本
天谕手游图形版本天谕手游图形版本
天谕手游图形版本Lee Jungpyo
 
Unite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chineseUnite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chineseLee Jungpyo
 
Substanceshanghaippt repacked
Substanceshanghaippt repackedSubstanceshanghaippt repacked
Substanceshanghaippt repackedLee Jungpyo
 
Kgc2014 jplee allegorithmic
Kgc2014 jplee allegorithmicKgc2014 jplee allegorithmic
Kgc2014 jplee allegorithmicLee Jungpyo
 
양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)Lee Jungpyo
 
바바누드바디
바바누드바디바바누드바디
바바누드바디Lee Jungpyo
 
한손 도끼 모델링 과정 (작성자 강구영)
한손 도끼 모델링 과정   (작성자 강구영)한손 도끼 모델링 과정   (작성자 강구영)
한손 도끼 모델링 과정 (작성자 강구영)Lee Jungpyo
 
코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재Lee Jungpyo
 
Ndo2 가이드 강구영
Ndo2 가이드 강구영Ndo2 가이드 강구영
Ndo2 가이드 강구영Lee Jungpyo
 
Asia bootcamp devclan
Asia bootcamp devclanAsia bootcamp devclan
Asia bootcamp devclanLee Jungpyo
 
에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안Lee Jungpyo
 
에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~Lee Jungpyo
 
홍길동제안서
홍길동제안서홍길동제안서
홍길동제안서Lee Jungpyo
 
핼리네시아러프컨셉기획
핼리네시아러프컨셉기획핼리네시아러프컨셉기획
핼리네시아러프컨셉기획Lee Jungpyo
 

More from Lee Jungpyo (20)

X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018
 
天谕手游图形版本
天谕手游图形版本天谕手游图形版本
天谕手游图形版本
 
Unite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chineseUnite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chinese
 
Substanceshanghaippt repacked
Substanceshanghaippt repackedSubstanceshanghaippt repacked
Substanceshanghaippt repacked
 
Kgc2014 jplee allegorithmic
Kgc2014 jplee allegorithmicKgc2014 jplee allegorithmic
Kgc2014 jplee allegorithmic
 
Cgc 2014
Cgc 2014Cgc 2014
Cgc 2014
 
양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)
 
바바누드바디
바바누드바디바바누드바디
바바누드바디
 
한손 도끼 모델링 과정 (작성자 강구영)
한손 도끼 모델링 과정   (작성자 강구영)한손 도끼 모델링 과정   (작성자 강구영)
한손 도끼 모델링 과정 (작성자 강구영)
 
코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재
 
Ndo2 가이드 강구영
Ndo2 가이드 강구영Ndo2 가이드 강구영
Ndo2 가이드 강구영
 
Shader EXAM.
Shader EXAM.Shader EXAM.
Shader EXAM.
 
Asia bootcamp devclan
Asia bootcamp devclanAsia bootcamp devclan
Asia bootcamp devclan
 
Codex project
Codex projectCodex project
Codex project
 
에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안
 
에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~
 
Resume
ResumeResume
Resume
 
Pre analyze for
Pre analyze forPre analyze for
Pre analyze for
 
홍길동제안서
홍길동제안서홍길동제안서
홍길동제안서
 
핼리네시아러프컨셉기획
핼리네시아러프컨셉기획핼리네시아러프컨셉기획
핼리네시아러프컨셉기획
 

Recently uploaded

Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
Introduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxIntroduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxvipinkmenon1
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 

Recently uploaded (20)

Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
Introduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxIntroduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptx
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 

Python maya 2018 setup note

  • 1. FOR MAYA Instruction of Installation guide 整理王. JP
  • 2. 1. Compile to sip with PyQt5. 2. How to setting up When you using PyCharm. 3. WING IDE Overview
  • 3. List of Equipment. PyQt5 build Python 2.7.11 SIP 4.19.4 PyQt gpl 5.9.1 Install script as command script Visual studio 2015 or 2017 as visual studio command prompt. PyCharm IDE setup for Maya MayaCharm python connection of open port script python connection of remote debug open port script VSCode Setup for Maya PTVSD 3.0.0 VSCode python extension Overview
  • 4. 1. COMPILE TO SIP WITH PYQT5.
  • 5. Install python version of 2.7.11 • https://www.python.org/downloads/release/python-2711/ 1. Compile to sip with PyQt5.
  • 6. Make Symbolic python.exe  mayapy.exe 1. Compile to sip with PyQt5. 1. Run the command console as administrator. 2. Go to “C:Program FilesAutodeskMaya2018bin” 3. Command : mklink python.exe mayapy.exe
  • 7. Install to Autodesk® Maya 2018 - Developer Kit (aka devkit) • https://apps.autodesk.com/MAYA/en/Detail/Index?id=552549163637 6351277&appLang=en&os=Win64&autostart=true 1. Compile to sip with PyQt5.
  • 8. Install to Autodesk® Maya 2018 - Developer Kit (aka devkit) • List of Replacement directory • All directory of devkitBase to MayaRoot 1. Compile to sip with PyQt5.
  • 9. Install to Autodesk® Maya 2018 - Developer Kit (aka devkit) • C:Program FilesAutodeskMaya2018devkit 1. Compile to sip with PyQt5.
  • 11. Your Maya environments path https://knowledge.autodesk.com/support/maya/learn- explore/caas/CloudHelp/cloudhelp/2016/ENU/Maya/files/GUID-228CCA33-4AFE-4380-8C3D- 18D23F7EAC72-htm.html MAYA_LOCATION C:Program FilesAutodeskMaya2018 1. Compile to sip with PyQt5.
  • 12. Building to SIP • Check to exist this bat file as vcvarsall.bat 1. Compile to sip with PyQt5.
  • 13. Create setup.bat 1. Compile to sip with PyQt5. @echo off set MAYAVERSION=2018 set ADSKQTVERSION=5.6.1 set SIPVERSION=4.19.4 set PYQTVERSION=5.9.1 set MAYADRIVE=m: set BUILDDRIVE=v: if exist %MAYADRIVE%nul subst %MAYADRIVE% /d subst %MAYADRIVE% "C:Program FilesAutodeskMaya%MAYAVERSION%" set MAYA_LOCATION=%MAYADRIVE% set MAYAPYQTBUILD=%~dp0 rem Removing trailing set MAYAPYQTBUILD=%MAYAPYQTBUILD:~0,-1% if exist %BUILDDRIVE%nul subst %BUILDDRIVE% /d subst %BUILDDRIVE% "%MAYAPYQTBUILD%" set SIPDIR=%BUILDDRIVE%sip-%SIPVERSION% set PYQTDIR=%BUILDDRIVE%PyQt5_gpl-%PYQTVERSION% rem set ADSKQTDIR=%BUILDDRIVE%qt-%ADSKQTVERSION% set QTDIR=%MAYA_LOCATION% set PATH=%QTDIR%bin;%PATH% set MSVC_VERSION=2015 set MSVC_DIR=C:Program Files (x86)Microsoft Visual Studio 14.0 set QMAKESPEC=%QTDIR%mkspecswin32-msvc%MSVC_VERSION% set _QMAKESPEC_=win32-msvc%MSVC_VERSION% if ["%LIBPATH%"]==[""] call "%MSVC_DIR%VCvcvarsall" amd64 set INCLUDE=%INCLUDE%;%MAYA_LOCATION%includepython2.7 set LIB=%LIB%;%MAYA_LOCATION%lib
  • 14. Building to SIP • Download to sip-4.19.4 • https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.4/ • Create new directory as name of __sdkext into your “D” drive.  D:__sdkext  Uncompress sip-4.19.4 into __sdkext foler. 1. Compile to sip with PyQt5.
  • 15. Building to SIP • Create sip.bat 1. Compile to sip with PyQt5. @echo off set XXX=%~dp0 if ["%MAYAPYQTBUILD%"]==[""] call "%XXX%setup.bat" pushd %SIPDIR% rem "%MAYA_LOCATION%binmayapy" configure- ng.py --spec %_QMAKESPEC_% "%MAYA_LOCATION%binmayapy" configure.py nmake nmake install popd
  • 16. Building to SIP • Install to Visual studio 2015 or 2017 • Run to visual studio command prompt as administrator mode. 1. Compile to sip with PyQt5.
  • 17. Building to SIP • Go to your __sdkext in command prompt. 1. Compile to sip with PyQt5.
  • 18. Building to SIP • Execute setup.bat in command prompt • Execute sip.bat 1. Compile to sip with PyQt5. • Checking to import sip in Maya2018
  • 19. Building to PyQt5 • Download PyQt5 source code. • https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.9.1/ 1. Compile to sip with PyQt5.
  • 20. Building to PyQt5 • Create pyqt.bat 1. Compile to sip with PyQt5. @echo off set XXX=%~dp0 if ["%MAYAPYQTBUILD%"]==[""] call "%XXX%setup.bat" set QMAKESPEC=%QTDIR%mkspecs%_QMAKESPEC_% if not exist "%QMAKESPEC%qmake.conf" ( echo "You need to uncompress %MAYA_LOCATION%mkspecsqt-5.6.1_vc14-mkspecs.tar.gz !" goto end ) if not exist "%MAYA_LOCATION%includeQtQtCoreqdir.h" ( echo "You need to uncompress %MAYA_LOCATION%includeqt-5.6.1_vc14-include.tar.gz in %MAYA_LOCATION%includeQt !" goto end ) findstr /L /C:"Headers=include/Qt" "%MAYA_LOCATION%binqt.conf" >nul 2>&1 if ERRORLEVEL 1 ( echo "You need to edit %MAYA_LOCATION%binqt.conf to use 'Headers=include/Qt'" goto end ) findstr /L /C:"-lqtmain -lshell32" "%QTDIR%mkspecscommonmsvc-desktop.conf" >nul 2>&1 if ERRORLEVEL 1 ( echo "You need to edit %QTDIR%mkspecscommonmsvc-desktop.conf to use 'QMAKE_LIBS_QT_ENTRY = -lqtmain -lshell32'" goto end ) if not exist "%MAYA_LOCATION%includeQtqtnfc.disabled" ( echo "You need to rename %MAYA_LOCATION%includeQtqtnfc to %MAYA_LOCATIONincludeQtqtnfc.disabled" goto end ) pushd %PYQTDIR% rem "%MAYA_LOCATION%binmayapy" configure-ng.py --spec %_QMAKESPEC_% "%MAYA_LOCATION%binmayapy" configure.py --spec %QMAKESPEC% LIBDIR_QT="%QTDIR%lib" INCDIR_QT="%QTDIR%includeQt" MOC="%QTDIR%binmoc.exe" -- sip="%QTDIR%Pythonsip.exe" --sip-incdir="%QTDIR%Pythoninclude" -w --no-designer-plugin nmake nmake install popd :end
  • 21. Building to PyQt5 • Must check item. 1. Compile to sip with PyQt5. "You need to rename %MAYA_LOCATION%includeQtqtnfc to %MAYA_LOCATIONincludeQtqtnfc.disabled" C:Program FilesAutodeskMaya2018includeQtqtnfc Folder name to qtfnc.disabled "You need to edit %QTDIR%mkspecscommonmsvc-desktop.conf to use 'QMAKE_LIBS_QT_ENTRY = -lqtmain -lshell32'"
  • 22. Building to PyQt5 • Build to PyQt5 via visual studio command prompt. • Asking to license about python then just type to “yes”. 1. Compile to sip with PyQt5.
  • 23. Building to PyQt5 • Testing PyQt5 in Maya2018. 1. Compile to sip with PyQt5.
  • 24. • Testing PyQt5 in Maya2018. 1. Compile to sip with PyQt5. import sys from PyQt5.QtWidgets import (QWidget, QToolTip, QPushButton) from PyQt5.QtGui import QFont class Example(QWidget): def __init__(self): super(Example,self).__init__() self.initUI() def initUI(self): QToolTip.setFont(QFont('SansSerif', 10)) self.setToolTip('This is a <b>QWidget</b> widget') btn = QPushButton('Button', self) btn.setToolTip('This is a <b>QPushButton</b> widget') btn.resize(btn.sizeHint()) btn.move(50, 50) self.setGeometry(300, 300, 300, 200) self.setWindowTitle('Tooltips') self.show() ex = Example()
  • 25. 2. HOW TO SETTING UP WHEN YOU USING PYCHARM.
  • 26. Connecting to port • import maya.cmds as cmds • if not cmds.commandPort(':4434', q=True): • cmds.commandPort(n=':4434') 2. How to setting up When you using pycharm.
  • 27. Installing to MAYA CHARM. Using Alt+F7 to open properties window then go to Plugins. Go to Browse repositories. Searching to MayaCharm then install. 2. How to setting up When you using pycharm.
  • 28. Copy script then using into the Maya. import maya.cmds as cmds if not cmds.commandPort(':4434', q=True): cmds.commandPort(n=':4434') 2. How to setting up When you using pycharm.
  • 29. Select to interpreter from maya bin folder as python.exe  Already We make link via mklink command between python and mayapy 2. How to setting up When you using pycharm.
  • 30. Additional setup your interpreter.  Go to More… then organizing to Interpreter path like below. 2. How to setting up When you using PyCharm.
  • 31. MayaCharm Python Remote debugger setting. Go to “Run” then open to “Edit Configurations…” 2. How to setting up When you using PyCharm.
  • 32. MayaCharm Python Remote debugger setting. Adding to new configuration of MayaCharm Debugger 2. How to setting up When you using PyCharm.
  • 33. MayaCharm Python Remote debugger setting. Execute Debug Maya2018 via Alt + F5 2. How to setting up When you using PyCharm.
  • 36. Install Wind-ide 3. WING IDE FOR MAYA.
  • 37. 1. Click to lower left side small bug icon then enable to Accept debug connections. 2. Execute connection code via simple python code below. 3. WING IDE FOR MAYA. import wingdbstub reload(wingdbstub) try: wingdbstub.Ensure() print 'Connected to WingIDE 6.0' except ValueError: print 'Could NOT connect to wingIDE'
  • 38. Create server script into your %MAYA_SCRIPT_PATH% mayaWingServer.py 3. WING IDE FOR MAYA. import sys import socket import threading import maya.utils as mu import maya.OpenMaya as om import executeWingCode #Global variables PORT = 6000 # Needs to be the same value as authored in wingHotkeys.py below. SIZE = 1024 BACKLOG = 5 #Functions def processDataInMaya(data): try: # If we don't evaluate in maya.util.executeInMainThreadWithResult(), Maya can crash, and that's no good. mu.executeInMainThreadWithResult(executeWingCode.main, data) except Exception, e: om.MGlobal.displayError('Encountered exception: %s'%e) def server(processFunc=processDataInMaya, port=PORT, backlog=BACKLOG, size=SIZE): host = '' s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: s.bind((host,port)) except: print 'Tried to open port %s, but failed: Its probably already openn'%port return s.listen(backlog) print 'Starting Python server, listening on port %s...n'%port while True: client, address = s.accept() # client is a socket object data = client.recv(size) if data: processFunc(data) client.close() def startServer(): threading.Thread(target=server).start()
  • 39. Start python server via simple python script at below. 3. WING IDE FOR MAYA. import maya.cmds as cmds cmds.evalDeferred('import mayaWingServer; mayaWingServer.startServer()', lowestPriority=True)
  • 40. Configuration of User hot key 3. WING IDE FOR MAYA. Create wingHotkeys.py into ‘C:Users<your_username>AppDataRoamingWing IDE 6scripts‘ import wingapi import socket import os import tempfile def getWingText(): editor = wingapi.gApplication.GetActiveEditor() if editor is None: return doc = editor.GetDocument() start, end = editor.GetSelection() txt = doc.GetCharRange(start, end) return txt def send_to_maya(language): # The port the sever is listening on in mayaWingServer.py : commandPort = 6000 if language != 'mel' and language != 'python': raise ValueError('Expecting either 'mel' or 'python'') txt = getWingText() if language == 'mel': if not txt.endswith(';'): txt += ';' # Cross-platform way to get a temp dir: tempDir = tempfile.gettempdir() tempFile = os.path.join(tempDir, 'wingData.txt') f = open(tempFile, 'w') f.write(txt) f.close() mSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # works in 2013... # Now ping Maya over the command-port try: mSocket.connect(('localhost', commandPort)) # 2016, mac # Send our code to Maya: # It is intercepted via the function processDataInMaya(), created via mayaWingServer.py mSocket.send(language) except Exception, e: print 'Send to Maya fail:', e mSocket.close() def python_to_maya(): send_to_maya('python') def mel_to_maya(): send_to_maya('mel')
  • 41. Configuration of User hot key 3. WING IDE FOR MAYA. Create executeWingCode.py into %MAYA_SCRIPT_PATH% import __main__ import os import tempfile import maya.OpenMaya as om def main(codeType): # Cross-platform way to get a temp dir: tempDir = tempfile.gettempdir() tempFile = os.path.join(tempDir, 'wingData.txt').replace('', '/') if os.access(tempFile , os.F_OK): # Print the lines from the file in Maya: with open(tempFile, 'r') as f: for line in f.readlines(): print line.rstrip() print 'n', if codeType == 'python': # execute the file contents in Maya: with open(tempFile , 'r') as f: exec(f, __main__.__dict__, __main__.__dict__) elif codeType == 'mel': melCmd = 'source %s'%tempFile om.MGlobal.executeCommand(melCmd, True, True) else: print 'No Wing-generated temp file exists: ' + tempFile
  • 42. Configuration of User hot key 3. WING IDE FOR MAYA. Go to Keyboard Personality -> Configure Tab Key… Press to Insert then set up to Key with Command. Command is ‘python_to_maya’
  • 43. Configuration of User hot key 3. WING IDE FOR MAYA. Go to Maya command line to type to code at below because When you receive from Wing-Ide that must open port local host with port of 6000. cmds.commandPort(name="127.0.0.1:6000", close=True, echoOutput=True) cmds.commandPort(name="127.0.0.1:6000", close=True, echoOutput=True) Closing port command at below
  • 44. Configuration of User hot key 3. WING IDE FOR MAYA. Execution test import maya.cmds as cmds cmds.polySphere(r=5)
  • 45. Auto Complete. 3. WING IDE FOR MAYA. Go to ‘Edit > Preferences > Source Analysis’ In the ‘Interface File Path‘, add the ‘pi‘ folder you find inside the pymel you just extracted. TO be precise, it can be found in ’devkit/other/pymel/extras/completion/py’. For added measure, I added both sub-folders inside the pi folder as well.