Mon Menu perso !

Ici on parle des scripts

Modérateurs : frez, Yadoob, stilobique, Matpi, ModSquad

Re: Mon Menu perso !

Message par Briand3D » 26 Juil 2014, 18:07

Bon, le pointeur ? :D

Je vous laisse coder ça :oops:

Je vais manger. :lol:

Bon week end.

A plus tard pour le résultat :D
Infographiste 3D Freelance
Portfolio
Avatar de l’utilisateur
Briand3D
 
Message(s) : 111
Inscription : 01 Oct 2013, 15:42

Re: Mon Menu perso !

Message par lapineige » 26 Juil 2014, 18:12

Le pointeur de la souris je veut dire.

Bon ap' :mrgreen:
On reste entre barbus :ugeek: :lol:
Mon terrier/blog: https://lapineige.fr/wp (l'ancien: le-terrier-de-lapineige.over-blog.com) | Mon GitHub: https://github.com/lapineige/Blender_add-ons | Lapineige's Tools: http://cgcookiemarkets.com/blender/all- ... ompilation
Avatar de l’utilisateur
lapineige
 
Message(s) : 3716
Inscription : 25 Juin 2014, 07:06

Re: Mon Menu perso !

Message par cedric » 26 Juil 2014, 23:30

Bon, j'ai trouvé un script pour recup les coordonnées du pointeur.

Code : Tout sélectionner
#----------------------------------------------------------
# File invoke.py
# from API documentation
#----------------------------------------------------------

import bpy

class SimpleMouseOperator(bpy.types.Operator):
    """ This operator shows the mouse location,
        this string is used for the tooltip and API docs
    """
    bl_idname = "wm.mouse_position"
    bl_label = "Mouse location"

    x = bpy.props.IntProperty()
    y = bpy.props.IntProperty()

    def execute(self, context):
        # rather then printing, use the report function,
        # this way the message appears in the header,
        self.report({'INFO'}, "Mouse coords are %d %d" % (self.x, self.y))
        return {'FINISHED'}

    def invoke(self, context, event):
        self.x = event.mouse_x
        self.y = event.mouse_y
        return self.execute(context)

#
#    Panel in tools region
#
class MousePanel(bpy.types.Panel):
    bl_label = "Mouse"
    bl_space_type = "VIEW_3D"
    bl_region_type = "TOOL_PROPS"

    def draw(self, context):
        self.layout.operator("wm.mouse_position")

#
#   Registration
#   Not really necessary to register the class, because this happens
#   automatically when the module is registered. OTOH, it does not hurt either.
bpy.utils.register_class(SimpleMouseOperator)
bpy.utils.register_module(__name__)

# Automatically display mouse position on startup
bpy.ops.wm.mouse_position('INVOKE_DEFAULT')

# Another test call, this time call execute() directly with pre-defined settings.
#bpy.ops.wm.mouse_position('EXEC_DEFAULT', x=20, y=66)
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7049
Inscription : 03 Août 2013, 21:36

Re: Mon Menu perso !

Message par cedric » 26 Juil 2014, 23:51

Bon, moi avoir 2 de QI, je sèche pour le moment, je trouverai peut être en dormant !
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7049
Inscription : 03 Août 2013, 21:36

Re: Mon Menu perso !

Message par cedric » 27 Juil 2014, 00:24

Pour l'instant j'ai ça, mais je doute que ce soit bon, j'ai aucun retour dans la console et ça ne fait rien du tout.

Code : Tout sélectionner
class JoinArea(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "join.area"
    bl_label = "Join_Area"
    variable = bpy.props.StringProperty()

    @classmethod
    def poll(cls, context):
        return True

    x = bpy.props.IntProperty()
    y = bpy.props.IntProperty()
   
    def invoke(self, context, event):
        self.x = event.mouse_x
        self.y = event.mouse_y
        return self.execute(context)
         

    def execute(self, context):
        bpy.ops.screen.area_join(min_x=self.x, min_y=self.y, max_x=self.x, max_y=self.y)
        return {'FINISHED'}
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7049
Inscription : 03 Août 2013, 21:36

Re: Mon Menu perso !

Message par lapineige » 27 Juil 2014, 09:53

Ah ben faut dire que tu lui dit de joindre deux zones qui sont à la même position pour la souris, c'est à dire les deux mêmes :mrgreen:

Il te faut "décalé" la deuxième coordonnées dans la direction voulu, et de suffisamment de pixel pour être dans un autre fenêtre (ce qu'il te faut tester).

Je l'avais dit que c'était un bon exercice :P
Mon terrier/blog: https://lapineige.fr/wp (l'ancien: le-terrier-de-lapineige.over-blog.com) | Mon GitHub: https://github.com/lapineige/Blender_add-ons | Lapineige's Tools: http://cgcookiemarkets.com/blender/all- ... ompilation
Avatar de l’utilisateur
lapineige
 
Message(s) : 3716
Inscription : 25 Juin 2014, 07:06

Re: Mon Menu perso !

Message par pid » 29 Juil 2014, 12:39

et y a pas moyen de lui faire tout detruire sauf celle sous le curseur ?
Avatar de l’utilisateur
pid
 
Message(s) : 213
Inscription : 03 Août 2013, 22:13

Re: Mon Menu perso !

Message par cedric » 29 Juil 2014, 12:56

C'est le mode plein écran ça ^^ Shitp + space ^^
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7049
Inscription : 03 Août 2013, 21:36

Re: Mon Menu perso !

Message par julius » 20 Août 2014, 22:52

J'ai commencé à regarder les custom menus également, et j'ai un petit problème :

j'ai mis la fonction Inset dans mon menu via cette commande :

layout.operator("mesh.inset")

cependant, si je clic sur la commande, il me fait bien un inset, mais je en peux pas le contrôler avec ma souris.
Comment faire pour que l'intéraction avec la souris fonctionne ?
julius
 
Message(s) : 51
Inscription : 10 Mars 2014, 15:31

Re: Mon Menu perso !

Message par cedric » 20 Août 2014, 23:14

Look les paramètres que ça te donne quand tu fais un inset normal, après, à voir si tu peux les rajouter à ton opérateur.
Sinon, f6 ^^
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7049
Inscription : 03 Août 2013, 21:36

Re: Mon Menu perso !

Message par julius » 21 Août 2014, 07:57

C'est ce que j'ai fait, mais ça n'écrit les paramètres qu'une fois le clic réalisé avec la souris (interaction terminée), et là, ça donne les valeurs de l'inset.
julius
 
Message(s) : 51
Inscription : 10 Mars 2014, 15:31

Re: Mon Menu perso !

Message par cedric » 21 Août 2014, 09:56

Essaie en créant une classe avec toutes les options de l'inset.
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7049
Inscription : 03 Août 2013, 21:36

Re: Mon Menu perso !

Message par julius » 21 Août 2014, 12:40

il y a un tuto sur les classes ? j'ai vu que tu créais une class pour les submenus dans tes tutos, mais comment sais-tu ce que tu dois mettre pour chacune de tes class ?
julius
 
Message(s) : 51
Inscription : 10 Mars 2014, 15:31

Re: Mon Menu perso !

Message par cedric » 21 Août 2014, 14:18

Look dans les templates avec un simple opérator.

Sinon, qu'est ce que tu entends par la souris ?
Sur mon inset perso, je peux changer la valeur via la souris.

Look dans mon menu clic droit.
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7049
Inscription : 03 Août 2013, 21:36

Re: Mon Menu perso !

Message par julius » 21 Août 2014, 14:22

oui, j'ai vu que ça fonctionnait dans ton menu clic droit, et je suis allé chercher ta ligne de code pour la recopier chez moi, mais toujours pareil.... Est-ce que le fait d'être passé en preset Maya pourrait avoir une incidence là dessus ?

Egalement, désolé mais je suis vraiment pas à l'aise encore sur le soft : qu'est-ce que tu appelles les templates ?

Edit : avec le bevel et l'extrude, même chose --> pas de contrôle associé à la souris. en passant par le menu, alors que lpar le raccourci clavier ça fonctionne.
Dernière édition par julius le 21 Août 2014, 14:39, édité 2 fois.
julius
 
Message(s) : 51
Inscription : 10 Mars 2014, 15:31

PrécédentSuivant

Retour vers Scripts - Python - OSL

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 0 invité(s)