Power users hub/ru: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
Line 1: Line 1:

[[Image:Crystal_Clear_app_terminal.png|right|150]]
[[Image:Crystal_Clear_app_terminal.png|right|150]]


This is the place to come if you want to have a deeper insight into FreeCAD. Here you can learn about customizing FreeCAD for your needs.
Это место для тех кто хочет глубже понять FreeCAD. Здесь вы можете узнать о настройке FreeCAD под ваши нужды.


These pages are in early stage of development. If you can't find the information you are looking for, or have found useful information somewhere we have not linked to, then please leave a comment on [[Talk:Power_users_hub|the talk page]], or, why not? [[Help_FreeCAD| Add some more content here yourself!]]
Эти страницы находятся в ранней стадии развития. Если вы не смогли найти интересующую вас информацию, или вы нашли где-то полезную информацию, не связанную с нами, пожалуйста оставьте комментарий на [[Talk:Power_users_hub|странице обсуждений]], или...., а почему бы и нет?! Добавьте сюда содержание самостоятельно!


One of the nicest features of FreeCAD is that you can script and extend it extremely far without the need to compile anything or touch the source code. All the scripting part is done in [http://en.wikipedia.org/wiki/Python_(programming_language) Python], a very powerful but simple programming language. With simple Python scripts, you have total access to about any part of FreeCAD. For example, you can:
Одной из самых приятных особенностей FreeCAD, это то что вы можете написать сценарий и расширить его по максимуму, без какой либо компиляции исходного кода. Вся Весь сценарий пишется на языке [http://en.wikipedia.org/wiki/Python_(programming_language) python], очень мощном , но простом языке программирования. С помощью простых python сценариев, вы получаете полный доступ к какой либо части Freecad. Например, вы можете:
* '''Create and modify geometry''': There is a kind of special object you need but that's not present in the default FreeCAD installation? You can easily create a new object type, either from scratch or by adapting an existing type.
* '''Создавать и изменять геометрию''': Существует специальный объект нужный вам но не входящий в стандартную комплектацию FreeCAD? Вы легко можете создать новый вид объекта, либо с нуля, либо адаптировав существующий тип.
* '''Create custom tools and commands''': At the moment, FreeCAD already has extensive functionality, but there aren't many convenient tools and commands for the final user yet. But it is already easy to create your own sets of tools.
* '''Создавать собственные инструменты и команды''': На сегодняшний день, FreeCAD уже обладает широкими функциональными возможностями, правда пока не хватает множества удобных инструментов и команд для конечного пользователя. Но теперь стало проще создавать ваши собственные наборы инструментов.
* '''Modify the interface''': The FreeCAD user interface is still very basic at this stage. But everything is there for you to extend it to your needs. You can, for example, create toolbars to put your own tools, create special panels for interacting with your tools, etc.
* '''Изменять интерфейс''': Пользовательский интерфейс FreeCAD на данном этапе , очень прост. Но все что в не есть вы можете расширить под ваши нужды. Вы можете, к примеру, создать панель инструментов и пометить туда ваши инструменты, создавать специальные панели для взаимодействия с вашими инструментами(пример меню привязки, или меню выбора плоскости), и.т.д.
*'''Modify the scene representation''': FreeCAD has separate processes for building up and computing the geometry and displaying that geometry on your screen. You have full access to the way the scene contents are displayed on screen, therefore you can modify that representation, interact with it, or add all kinds of custom behaviours and screen widgets, like information, draggers, anchors or temporary entities.
*'''Изменять представление на сцене''': В FreeCAD обладает раздельными процессами построения и вычисления геометрии и отрисовки этой геометрии на вашем экране. Вы обладаете полным доступом к содержимому отображающемуся на экране, поэтому вы можете изменить представление, взаимодействовать с ним, или добавить различные виды взаимодействия объекта с пользователем и экранные виджеты, как например информационные, перетаскиватели(draggers), якоря(привязки) или временные объекты(так реализуется быстрый предпросмотр операции)


== Настройка FreeCAD ==
== Customizing FreeCAD ==


* [[Interface Customization/ru|Настройка Интерфейса]]: Начиная с начала: Панели инструментов и ярлыки
* [[Interface Customization]]: Starting with the beginning: Toolbars and shortcuts
* [[Macros|Working with Macros]]: Easily record often repeated tasks or Python code
* [[Macros/ru|Работа с макросами]]: Легкая запись часто повторяющихся задач или python кода


== Написание сценариев FreeCAD ==
== Scripting in FreeCAD ==


'''Основы'''
'''General'''
* [[Introduction to python/ru|Введение в python]] - См. также другие учебники Python в нижней части этой страницы
* [[Introduction to python]] - See also other Python tutorials at the bottom of this page
* [[Python scripting tutorial|FreeCAD scripting tutorial]] - A general look at python scripting in FreeCAD
* [[FreeCAD Scripting Basics/ru|основы написания сценариев для FreeCAD]]: Что сказать, основы ...
* [[FreeCAD Scripting Basics]]: Well, the basics...
* [[Gui Command/ru|Gui Команды]] : Добавление пользовательских команд в GUI
* [[Gui Command]] : Adding custom commands to the GUI
* Использование смешанных [[Units|Единиц измерения]] в FreeCAD
* Using mixed [[Units]] in FreeCAD


'''Working with Meshes'''
'''Работа с полигиональными сетками'''
* [[Mesh Scripting/ru|Написание сценариев для Mesh]]: Как с ними взаимодействовать смотри в [[Mesh Module/ru|Mesh Модуль]]
* [[Mesh Scripting]]: How to interact with the [[Mesh Module]]


'''Working with Parts'''
'''Использование OpenCasCade'''
* [[Part Module|The Part Module]]: How [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE Technology] tools and structure is used in FreeCAD
* [[Part Module/ru|Модуль Деталей]]: Как инструменты и структуры OpenCasCade используются в FreeCAD
* [[Topological data scripting/ru|Сценарии модуля Деталей]]: Как взаимодействовать с Модулем Деталей
* [[Topological data scripting]]: How to interact with the Part Module
* [[PythonOCC]]: How to unleash the whole Open CASCADE power
* [[pythonOCC]]: Как раскрыть всю мощь OpenCasCade
* [[Mesh to Part/ru|Mesh to Part]]: Преобразование между типами объектов
* [[Mesh to Part]]: Converting between object types


'''Accessing the Coin scenegraph'''
'''Получение доступа к отрисовщику сцен - Coin'''
* [[Scenegraph/ru|The Coin/Inventor scenegraph]]: Как работает представление сцен в FreeCAD
* [[Scenegraph|The Coin/Inventor scenegraph]]: How the FreeCAD scene representation works
* [[Pivy]]: How to access and modify the scenegraph
* [[Pivy/ru|Pivy]]: Как получить доступ и изменить графческое представление сцены


'''Controlling the Qt interface'''
'''Управление Qt интерфейсом'''
* [[PyQt]]: How to access the interface, and modify its contents
* [[PyQt/ru|PyQt]]: Как получить доступ к интерфейсу и изменить его содержание
* [[Embedding FreeCADGui|Использование FreeCAD GUI]] в различных Qt приложениях с помощью PyQt
* [[Embedding FreeCADGui|Using the FreeCAD GUI]] in another Qt application with PyQt


'''Working with parametric objects'''
'''Работа с параметрическими объектами'''
* [[Scripted objects/ru|Сценарные объекты]]: Как создать 100% python-сценарные объекты в FreeCAD
* [[Scripted objects]]: How to make 100% Python-scripted objects in FreeCAD
* [[Drawing Module]]: Automating the 3D-to-2D process
* [[Drawing Module/ru|Модуль Проецирования]]: Автоматизация процессов перегона 3D в 2D


'''Примеры'''
'''Examples'''
* [[Code snippets/ru|Фрагменты кода]] : Коллекция фрагментов FreeCAD python кода, в качестве ингредиентов ваших сценариев...
* [[Code snippets]] : A collection of pieces of FreeCAD Python code, to serve as ingredients in your scripts...
* [[Line drawing function]]: How to build a simple tool to draw lines
* [[Line drawing function/ru|Функция отрисовки линии]]: Как собрать простой инструмент для отрисовки линий
* [[Dialog creation/ru|Создание диалога]]: Как сконструировать диалог в Qt designer, и использовать его в FreeCAD
* [[Dialog creation]]: How to construct dialogs with Qt designer, and use them in FreeCAD
* [[Embedding FreeCAD/ru|Встраивание FreeCAD]]: Как импортировать FreeCAD в виде python модуля в другие приложения
* [[Embedding FreeCAD]]: How to import FreeCAD as a Python module in other applications
* The [[Draft Module]] adds basic 2d drawing functions to freecad. It is written entirely in Python, so it can be a good example if you want to write your own modules.
* [[2d_Drafting_Module/ru|Модуль черчения]]добавляет основные функции 2d рисования в freecad. Он полностью написан на python, так что может быть хорошим примером если вы хотите писать ваши собственные модули.
* [[FreeCAD vector math library]] : A couple of handy functions to manipulate FreeCAD vectors. This library is also included in the Draft module.
* [[FreeCAD vector math library|FreeCAD векторная библиотека]] : Пара полезных функций для работы с векторами в FreeCAD. Эта библиотека также включена в Чертежный Модуль.


== API Функции ==
== API Functions ==


The complete API description can be found [[:Category:API|here]]. Note that it can be incomplete, since we still didn't find a way to include it automatically on this wiki. For more accurate information, browse the modules directly from FreeCAD.
Полное описание API можно найти [[:Category:API|здесь]]. Заметим что он может быть неполным, так как мы не нашли способа автоматически включать его в эту wiki. Для получения более точной информации, просматривайте модули напрямую из FreeCAD.


== Advanced modification ==
== Продвинутые модификации ==


* [[Start up and Configuration/ru|Запуск и настройка]]: Запуск и параметры командной строки
* [[Start up and Configuration]]: Startup and command line options
* [[Install on Windows]]: Использование windows установщика
* [[Install on Windows]]: Using the windows installer
* [[CompileOnWindows|Компиляция FreeCAD в Windows]] и [[CompileOnUnix/ru|Компиляция FreeCAD в Unix]]
* [[CompileOnWindows|Compiling FreeCAD on Windows]] and [[CompileOnUnix|Compiling FreeCAD on Unix]]
* [[Branding]]: Simple modifications you can do to the source code to change some aspects of FreeCAD
* [[Branding|Торговая марка]]: Просты изменения которые вы можете сделать с исходными кодами для изменения некоторых аспектов FreeCAD
* [[Extra python modules/ru|Дополнительные модули Python]] : Расширение FreeCAD python интерпретатора этими мощными модулями!
* [[Extra python modules]] : Extend the FreeCAD python interpreter with these powerful modules!


== Учебники по Python ==
== Python tutorials ==


These are good generic tutorials, not specific to FreeCAD, that might interest you if you are totally new to python.
Здесь представлены хорошие общие учебники, без специфики FreeCAD, они могут вас заинтересовать, если для вас python, это что-то свовершенно новое.


'''Python'''
'''Python'''
* [http://docs.python.org/tut/tut.html Официальный python учебник] - весьма полный учебник для знакомства с Python
* [http://docs.python.org/tut/tut.html Official python tutorial] - A very complete tutorial for discovering python
* [http://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python Учебник по python для не программистов] - отличная wikiкнига
* [http://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python Non-programmer tutorial for python] - an excellent wikibook
* [http://npt.cc.rsu.ru/user/wanderer/ODP/Python_for_Newbies.htm Python для новичков] - один большой учебник полностью охватывающий основы
* [http://npt.cc.rsu.ru/user/wanderer/ODP/Python_for_Newbies.htm Python for newbies] - one big tutorial covering all the basics


'''PyQt''' - Как создавать и управлять FreeCADовским Qt UI интерфейсом с помощью python
'''PyQt''' - How to create and manage FreeCAD's Qt UI interface from python
* [http://www.cs.usfca.edu/~afedosov/qttut/ Учебник по основам PyQt] : Простой и короткий основанный на linux учебник который объяснит как работать с PyQt и Qt Designer
* [http://www.cs.usfca.edu/~afedosov/qttut/ Basic PyQt tutorial] : A simple and short linux-based tutorial that will explain how to work with PyQt and Qt Designer
* [http://zetcode.com/tutorials/pyqt4/firstprograms/ Первая программа в PyQt4] : A platform-agnostic tutorial showing the interns of python + qt
* [http://zetcode.com/tutorials/pyqt4/firstprograms/ First programs in PyQt4] : A platform-agnostic tutorial showing the interns of python + qt
* [http://vizzzion.org/?id=pyqt программирование Qt приложений в python] : Углубленный учебник охватывающий весь процесс работы с qt и python.
* [http://vizzzion.org/?id=pyqt programming Qt applications in python] : A more in-depth tutorial covering all the process of working with qt and python.


'''Pivy''' - Как взаимодействовать с в 3D сценой FreeCADа
'''Pivy''' - How to interact with FreeCAD's 3D scenes
* [http://pivy.coin3d.org/documentation/pycon Учебник по основам Pivy] : Очень простой учебник с официального сайта Pivy
* [http://pivy.coin3d.org/documentation/pycon Basic Pivy tutorial] : A very simple tutorial form the official Pivy site
* [http://www.google.com.br/url?sa=U&start=3&q=http://studierstube.icg.tu-graz.ac.at/doc/pdf/PivyStudierstubeTutorial.pdf&ei=XyC1Sc2wOeCKmQem_eHnBQ&usg=AFQjCNEYhb-0DcUc6OxFVijAe1epBb-4aA Представление Pivy в studiersturbe] : Документ, на самом деле не учебник, но он прекрасно иллюстрирует как работает Pivy
* [http://www.google.com.br/url?sa=U&start=3&q=http://studierstube.icg.tu-graz.ac.at/doc/pdf/PivyStudierstubeTutorial.pdf&ei=XyC1Sc2wOeCKmQem_eHnBQ&usg=AFQjCNEYhb-0DcUc6OxFVijAe1epBb-4aA Introducing Pivy into studierstube] : A document that is not really a tutorial, but that illustrates well how Pivy works


== Community projects ==
== Общественные проекты ==


On the [[free-cad:Community Portal|Community portal]], you can find other FreeCAD-based projects run by the FreeCAD users community. If you are starting a new FreeCAD project, be sure to list it there! We also have a page with things you can do if you would like to [[Help FreeCAD]].
На [[free-cad:Community Portal|портале Сообщества]], вы можете найти другие основанные на FreeCAD проекты запущенные сообществом пользователей FreeCAD . Если вы начинаете новый FreeCAD проект, убедитесь что его нет в списке! У нас также есть страница , с описанием вещей, которые вы могли бы сделать, если хотите [[Help FreeCAD|Помочь FreeCAD]].


{{languages/ru | {{en|Power users hub}} {{es|Power users hub/es}} {{fr|Power users hub/fr}} {{se|Power users hub/se}} }}
{{languages | {{es|Power users hub/es}} {{fr|Power users hub/fr}} {{it|Power users hub/it}} {{jp|Power users hub/jp}} {{ru|Power users hub/ru}} {{se|Power users hub/se}} }}


[[Category:Hubs]]
[[Category:Hubs]]

Revision as of 14:39, 7 August 2013

150
150

This is the place to come if you want to have a deeper insight into FreeCAD. Here you can learn about customizing FreeCAD for your needs.

These pages are in early stage of development. If you can't find the information you are looking for, or have found useful information somewhere we have not linked to, then please leave a comment on the talk page, or, why not? Add some more content here yourself!

One of the nicest features of FreeCAD is that you can script and extend it extremely far without the need to compile anything or touch the source code. All the scripting part is done in Python, a very powerful but simple programming language. With simple Python scripts, you have total access to about any part of FreeCAD. For example, you can:

  • Create and modify geometry: There is a kind of special object you need but that's not present in the default FreeCAD installation? You can easily create a new object type, either from scratch or by adapting an existing type.
  • Create custom tools and commands: At the moment, FreeCAD already has extensive functionality, but there aren't many convenient tools and commands for the final user yet. But it is already easy to create your own sets of tools.
  • Modify the interface: The FreeCAD user interface is still very basic at this stage. But everything is there for you to extend it to your needs. You can, for example, create toolbars to put your own tools, create special panels for interacting with your tools, etc.
  • Modify the scene representation: FreeCAD has separate processes for building up and computing the geometry and displaying that geometry on your screen. You have full access to the way the scene contents are displayed on screen, therefore you can modify that representation, interact with it, or add all kinds of custom behaviours and screen widgets, like information, draggers, anchors or temporary entities.

Customizing FreeCAD

Scripting in FreeCAD

General

Working with Meshes

Working with Parts

Accessing the Coin scenegraph

Controlling the Qt interface

Working with parametric objects

Examples

  • Code snippets : A collection of pieces of FreeCAD Python code, to serve as ingredients in your scripts...
  • Line drawing function: How to build a simple tool to draw lines
  • Dialog creation: How to construct dialogs with Qt designer, and use them in FreeCAD
  • Embedding FreeCAD: How to import FreeCAD as a Python module in other applications
  • The Draft Module adds basic 2d drawing functions to freecad. It is written entirely in Python, so it can be a good example if you want to write your own modules.
  • FreeCAD vector math library : A couple of handy functions to manipulate FreeCAD vectors. This library is also included in the Draft module.

API Functions

The complete API description can be found here. Note that it can be incomplete, since we still didn't find a way to include it automatically on this wiki. For more accurate information, browse the modules directly from FreeCAD.

Advanced modification

Python tutorials

These are good generic tutorials, not specific to FreeCAD, that might interest you if you are totally new to python.

Python

PyQt - How to create and manage FreeCAD's Qt UI interface from python

Pivy - How to interact with FreeCAD's 3D scenes

Community projects

On the Community portal, you can find other FreeCAD-based projects run by the FreeCAD users community. If you are starting a new FreeCAD project, be sure to list it there! We also have a page with things you can do if you would like to Help FreeCAD.

Available translations of this page: Template:Jp Template:Se