1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

[VB script+pugin] Inverser la sélection

Discussion dans 'CamBam' créé par dh42, 10 Août 2013.

  1. dh42

    dh42 Compagnon

    Messages:
    3 975
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    [VB script+pugin] Inverser la sélection
    Salut,

    Voici un nouveau script permettant d'inverser la sélection (des objets de dessin)
    Sauver le avec l’extension .vbs dans votre dossier script de Cambam.

    Edit, correction d'un bug (les objets étaient sélectionnés à l'écran, mais pas dans l'arborescence, ce qui rendait la sélection inutilisable)

    Recopiez tout le code ci dessous, ou changez votre script existant ; il faut ajouter la ligne

    CamBamConfig.Defaults.ReloadTreeAfterScript = false

    (4 ieme ligne dans la fonction main ; voir ci dessous)

    Désolé, je n'avais pas vu ce bug ..

    ++
    David

    Code:
    'invert selection - dh42 2013
    
    sub main
    
    	dim ent as Entity
    	dim ID as integer
    	dim rep as boolean = false
    
    	CamBamConfig.Defaults.ReloadTreeAfterScript = false
    
    	' store data for actual selection
    	dim oldselection as ArrayList = new ArrayList()
    
    	for each ent in view.SelectedEntities
    
    		oldselection.Add(ent)
    
    	next ent
    
    
    	'select all
    	view.SelectAllVisibleGeometry()
    
    	dim invertselect as ArrayList = new ArrayList()
    
    	'scan all the objects
    	for each ent in view.SelectedEntities
    				
    		rep = scanID(ent.ID, oldselection)	' test if ID exist in old selection
    		
    		if rep = false then 'not found
    			invertselect.Add(ent)	' add the object to the new list
    		end if
    
    	next ent
    
    	view.Select(invertselect)
    
    end sub
    
    '--------------------------------------------------------------------
    
    function scanID( ID as integer, oldsel as ArrayList ) as boolean
    	
    	'scan the old selection, if ID match, return true, else false
    
    	dim ent as Entity
    
    	for each ent in oldsel
    		
    		if ID = ent.ID then		'match found
    			return true
    			exit function
    		end if
    
    	next ent
    
    	return false	'no match found
    
    end function
    
     
  2. jeramenemafraise

    jeramenemafraise Ouvrier

    Messages:
    254
    Inscrit:
    6 Janvier 2013
    [VB script+pugin] Inverser la sélection
    Re: [VB script] Inverser la sélection

    salut David,
    merci pour cet utilitaire pour CB, mais j'ai essayé , je ne vois pas trop son fonctionnement, si tu as un exemple ?.

    si non c'est pas bien grave, bonne journée.
    Yves.
     
  3. rddt

    rddt Ouvrier

    Messages:
    464
    Inscrit:
    25 Avril 2010
    Localité:
    toit du Var
    [VB script+pugin] Inverser la sélection
    Re: [VB script] Inverser la sélection

    Bonjour a tous

    Même motif même punition que Yves. :?:

    @+
     
  4. dh42

    dh42 Compagnon

    Messages:
    3 975
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    [VB script+pugin] Inverser la sélection
    Re: [VB script] Inverser la sélection

    Salut,

    Ça permet simplement d'inverser la sélection courante. (Cambam n'a pas cette fonction pourtant très commune)

    http://screencast.com/t/JZ37agMb

    Pour l'utiliser, cliquez dans la fenêtre de code et tapez sur la touche F5 pour lancer

    ++
    David
     
    Dernière édition par un modérateur: 16 Avril 2015
  5. dh42

    dh42 Compagnon

    Messages:
    3 975
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    [VB script+pugin] Inverser la sélection
    Re: [VB script] Inverser la sélection

    Salut,

    Correction d'un bug, voir l'Edit du premier message ..

    Je comprends mieux pourquoi certain n'en comprenaient pas l'utilité, car effectivement une fois les objet sélectionnés, certaines actions étaient impossibles (comme les effacer par exemple). :oops:

    ++
    David
     
  6. dh42

    dh42 Compagnon

    Messages:
    3 975
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    [VB script+pugin] Inverser la sélection
    Re: [VB script+plugin] Inverser la sélection

    Salut,

    Je viens de me mettre à la programmation de 'vrais' plugins pour Cambam, et voici le premier, qui a la même utilité que le script, à savoir inverser la sélection des formes de dessin. (les objet sélectionnés sont désélectionnés, et inversement)

    décompressez le et copier le fichier .dll dans le dossier plugin du dossier d'installation de cambam.

    Une nouvelle entrée de menu 'inverser la sélection' (Ctrl+I) apparaitra dans le menu 'Edition', en dessous de 'tout sélectionner sur le calque courant'. Elle sera en Anglais jusqu'à ce que vous ayez fait la mise à jour du fichier de traduction. (ici: http://www.usinages.com/cambam/cambam-doc-francais-t23890-240.html#p642802)

    ++
    David Voir la pièce jointe InvertSelected.rar
     
    Dernière édition par un modérateur: 16 Avril 2015
Chargement...
Articles en relation
  1. Moi33
    Réponses:
    2
    Affichages:
    1 500
  2. dh42
    Réponses:
    5
    Affichages:
    1 012

Partager cette page