<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>sujet iLogic - Création de côte automatique dans Inventor - Forum Français</title>
    <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11606035#M2733</link>
    <description>&lt;P&gt;Bonjour à tous,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Je rencontre un problème en iLogic, je souhaite réaliser une mise en plan automatique à partir d'un .iam,&amp;nbsp;&lt;/P&gt;&lt;P&gt;J'ai donc intégré mon code dans cet .iam qui génère automatiquement le dessin, la vue, l'échelle, etc.&lt;/P&gt;&lt;P&gt;Je souhaite à présent ajouter des côtes, j'utilise le Name Entities pour faire ça (le NE's est imposé par mon entreprise, mais si jamais vous avez d'autres solutions en tête propre et peut être plus simples n'hésitez pas) dès que j’exécute ma règle la création de la mise en plan se lance et j'ai le message d'erreur que je vous mets en pièce jointe, je vois que la règle s'est exécutée correctement jusqu'au renommage de ma vue "Front View". Je pense comprendre que le problème vient du fait que je lui demande de faire appel à des intentions de géométrie dans un dessin alors que je suis dans un assemblage, mais aucune idée de comment y remédier.&amp;nbsp; Voici mon code :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="visual-basic"&gt;Option Explicit On
Option Strict On
Sub main

	Const GabaritDwg As String = "C:\Workspace_Vault\99_Administration\01_Templates\Current Version\Site Nantes\Standard templates\Standard KTSN.dwg"

	Dim ADoc As Inventor.AssemblyDocument = DirectCast(ThisApplication.ActiveDocument, Inventor.AssemblyDocument)

	Dim NewDwg As Inventor.DrawingDocument = DirectCast(ThisApplication.Documents.Add(DocumentTypeEnum.kDrawingDocumentObject, GabaritDwg, True), Inventor.DrawingDocument)


	'*** Choix du format et de l'orientation
	NewDwg.ActiveSheet.Size = DrawingSheetSizeEnum.kA2DrawingSheetSize								'***A2
	NewDwg.ActiveSheet.Orientation = PageOrientationTypeEnum.kPortraitPageOrientation				'***PORTRAIT

	Dim NewSheet = NewDwg.ActiveSheet

	'*** Créer la vue de base à la moitié de la largeur de la feuille en H
	'						  au 3/4 de la hauteur dela feuiille en V

	Dim oTG As Inventor.TransientGeometry = ThisApplication.TransientGeometry

	Dim ViewCenter As Inventor.Point2d = oTG.CreatePoint2d(NewDwg.ActiveSheet.Width / 2, NewDwg.ActiveSheet.Height * 3 / 4)

	Dim FrontView As Inventor.DrawingView = NewDwg.ActiveSheet.DrawingViews.AddBaseView(DirectCast(ADoc, _Document), ViewCenter, 1,
	ViewOrientationTypeEnum.kFrontViewOrientation,
	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'	Dim TopView As Inventor.DrawingView = NewDwg.ActiveSheet.DrawingViews.AddAuxiliaryView(FrontView, DirectCast(ADoc, _Document), ViewCenter, 1,
	'	ViewOrientationTypeEnum.kFrontViewOrientation,
	'	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'*** SUPPRIMER LES SYMBOLES D'ESQUISSES DE LA NOUVELLE FEUILLE
	'*** Supprimer le symbole "Cadre - Informations Générales"
	Dim SketchedSymbolDef As SketchedSymbol
	For Each SketchedSymbolDef In NewDwg.ActiveSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Cadre - Informations Générales" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next
	'*** Supprimer le symbole "Title Block - FR-EN - Support"
	For Each SketchedSymbolDef In NewDwg.ActiveSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Title Block - FR-EN - Support" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next

	'*** Ajuster l'échelle de la vue pour qu'elle ne dépasse PAS la moitié de la hauteur
	Dim Ratio As Double = (NewDwg.ActiveSheet.Height / 2) / FrontView.Height

	Dim ViewScaleFrontView As Double = CalculateScale(Ratio)

	FrontView.ScaleString = ViewScaleFrontView.ToString

	FrontView.Name = FrontView.Name.Replace("1", "FRONT VIEW")

	Dim Intent1 As GeometryIntent = ActiveSheet.View("FRONT VIEW").GetIntent("SUP-6141-BEARING SUPPORT:1", "Upperface")
	Dim Intent2 As GeometryIntent = ActiveSheet.View("FRONT VIEW").GetIntent("SUP-6141-SUPPORT PLATE:1", "Lowerface")
	
	Dim genDims = ActiveSheet.DrawingDimensions.GeneralDimensions
	Dim linDim1 = genDims.AddLinear("Dimension1", ActiveSheet.View("FRONT VIEW").SheetPoint(0.8, 1.6), Intent1, Intent2)


End Sub


Function CalculateScale(Ratio As Double) As Double
	If Ratio&amp;gt;200 Then
		CalculateScale = 200    ' Echelle 200:1
	Else If Ratio&amp;gt;100 Then
	CalculateScale = 100        ' Echelle 100:1
	Else If Ratio&amp;gt;50 Then
	CalculateScale = 50         ' Echelle 50:1
	Else If Ratio&amp;gt;25 Then
	CalculateScale = 25         ' Echelle 25:1
	Else If Ratio&amp;gt;20 Then
	CalculateScale = 20         ' Echelle 20:1
	Else If Ratio&amp;gt;10 Then
	CalculateScale = 10         ' Echelle 10:1
	Else If Ratio&amp;gt;5 Then
	CalculateScale = 5          ' Echelle 5:1
	Else If Ratio&amp;gt;2 Then
	CalculateScale = 2          ' Echelle 2:1       
	Else If Ratio&amp;gt;1 Then
	CalculateScale = 1          ' Echelle 1:1
	Else If Ratio&amp;gt;0.5 Then
	CalculateScale = 0.5        ' Echelle 1:2
	Else If Ratio&amp;gt;0.25 Then
	CalculateScale = 0.25       ' Echelle 1:4
	Else If Ratio&amp;gt;0.2 Then
	CalculateScale = 0.2        ' Echelle 1:5
	Else If Ratio&amp;gt;0.1 Then
	CalculateScale = 0.1        ' Echelle 1:10
	Else If Ratio&amp;gt;0.05 Then
	CalculateScale = 0.05       ' Echelle 1:20
	Else If Ratio&amp;gt;0.04 Then
	CalculateScale = 0.04       ' Echelle 1:25
	Else If Ratio&amp;gt;0.02 Then
	CalculateScale = 0.02       ' Echelle 1:50
	Else If Ratio&amp;gt;0.01 Then
	CalculateScale = 0.01       ' Echelle 1:100
	Else If Ratio&amp;gt;0.005 Then
	CalculateScale = 0.005      ' Echelle 1:200
	Else
		CalculateScale = 0.01       ' Echelle 1:100 0.01 est la valeur par defaut si les autres echelles ne conviennent pas.
	End If

End Function&lt;/LI-CODE&gt;&lt;P&gt;Merci d'avance,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 08 Dec 2022 08:32:44 GMT</pubDate>
    <dc:creator>alysonrssl</dc:creator>
    <dc:date>2022-12-08T08:32:44Z</dc:date>
    <item>
      <title>iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11606035#M2733</link>
      <description>&lt;P&gt;Bonjour à tous,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Je rencontre un problème en iLogic, je souhaite réaliser une mise en plan automatique à partir d'un .iam,&amp;nbsp;&lt;/P&gt;&lt;P&gt;J'ai donc intégré mon code dans cet .iam qui génère automatiquement le dessin, la vue, l'échelle, etc.&lt;/P&gt;&lt;P&gt;Je souhaite à présent ajouter des côtes, j'utilise le Name Entities pour faire ça (le NE's est imposé par mon entreprise, mais si jamais vous avez d'autres solutions en tête propre et peut être plus simples n'hésitez pas) dès que j’exécute ma règle la création de la mise en plan se lance et j'ai le message d'erreur que je vous mets en pièce jointe, je vois que la règle s'est exécutée correctement jusqu'au renommage de ma vue "Front View". Je pense comprendre que le problème vient du fait que je lui demande de faire appel à des intentions de géométrie dans un dessin alors que je suis dans un assemblage, mais aucune idée de comment y remédier.&amp;nbsp; Voici mon code :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="visual-basic"&gt;Option Explicit On
Option Strict On
Sub main

	Const GabaritDwg As String = "C:\Workspace_Vault\99_Administration\01_Templates\Current Version\Site Nantes\Standard templates\Standard KTSN.dwg"

	Dim ADoc As Inventor.AssemblyDocument = DirectCast(ThisApplication.ActiveDocument, Inventor.AssemblyDocument)

	Dim NewDwg As Inventor.DrawingDocument = DirectCast(ThisApplication.Documents.Add(DocumentTypeEnum.kDrawingDocumentObject, GabaritDwg, True), Inventor.DrawingDocument)


	'*** Choix du format et de l'orientation
	NewDwg.ActiveSheet.Size = DrawingSheetSizeEnum.kA2DrawingSheetSize								'***A2
	NewDwg.ActiveSheet.Orientation = PageOrientationTypeEnum.kPortraitPageOrientation				'***PORTRAIT

	Dim NewSheet = NewDwg.ActiveSheet

	'*** Créer la vue de base à la moitié de la largeur de la feuille en H
	'						  au 3/4 de la hauteur dela feuiille en V

	Dim oTG As Inventor.TransientGeometry = ThisApplication.TransientGeometry

	Dim ViewCenter As Inventor.Point2d = oTG.CreatePoint2d(NewDwg.ActiveSheet.Width / 2, NewDwg.ActiveSheet.Height * 3 / 4)

	Dim FrontView As Inventor.DrawingView = NewDwg.ActiveSheet.DrawingViews.AddBaseView(DirectCast(ADoc, _Document), ViewCenter, 1,
	ViewOrientationTypeEnum.kFrontViewOrientation,
	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'	Dim TopView As Inventor.DrawingView = NewDwg.ActiveSheet.DrawingViews.AddAuxiliaryView(FrontView, DirectCast(ADoc, _Document), ViewCenter, 1,
	'	ViewOrientationTypeEnum.kFrontViewOrientation,
	'	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'*** SUPPRIMER LES SYMBOLES D'ESQUISSES DE LA NOUVELLE FEUILLE
	'*** Supprimer le symbole "Cadre - Informations Générales"
	Dim SketchedSymbolDef As SketchedSymbol
	For Each SketchedSymbolDef In NewDwg.ActiveSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Cadre - Informations Générales" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next
	'*** Supprimer le symbole "Title Block - FR-EN - Support"
	For Each SketchedSymbolDef In NewDwg.ActiveSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Title Block - FR-EN - Support" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next

	'*** Ajuster l'échelle de la vue pour qu'elle ne dépasse PAS la moitié de la hauteur
	Dim Ratio As Double = (NewDwg.ActiveSheet.Height / 2) / FrontView.Height

	Dim ViewScaleFrontView As Double = CalculateScale(Ratio)

	FrontView.ScaleString = ViewScaleFrontView.ToString

	FrontView.Name = FrontView.Name.Replace("1", "FRONT VIEW")

	Dim Intent1 As GeometryIntent = ActiveSheet.View("FRONT VIEW").GetIntent("SUP-6141-BEARING SUPPORT:1", "Upperface")
	Dim Intent2 As GeometryIntent = ActiveSheet.View("FRONT VIEW").GetIntent("SUP-6141-SUPPORT PLATE:1", "Lowerface")
	
	Dim genDims = ActiveSheet.DrawingDimensions.GeneralDimensions
	Dim linDim1 = genDims.AddLinear("Dimension1", ActiveSheet.View("FRONT VIEW").SheetPoint(0.8, 1.6), Intent1, Intent2)


End Sub


Function CalculateScale(Ratio As Double) As Double
	If Ratio&amp;gt;200 Then
		CalculateScale = 200    ' Echelle 200:1
	Else If Ratio&amp;gt;100 Then
	CalculateScale = 100        ' Echelle 100:1
	Else If Ratio&amp;gt;50 Then
	CalculateScale = 50         ' Echelle 50:1
	Else If Ratio&amp;gt;25 Then
	CalculateScale = 25         ' Echelle 25:1
	Else If Ratio&amp;gt;20 Then
	CalculateScale = 20         ' Echelle 20:1
	Else If Ratio&amp;gt;10 Then
	CalculateScale = 10         ' Echelle 10:1
	Else If Ratio&amp;gt;5 Then
	CalculateScale = 5          ' Echelle 5:1
	Else If Ratio&amp;gt;2 Then
	CalculateScale = 2          ' Echelle 2:1       
	Else If Ratio&amp;gt;1 Then
	CalculateScale = 1          ' Echelle 1:1
	Else If Ratio&amp;gt;0.5 Then
	CalculateScale = 0.5        ' Echelle 1:2
	Else If Ratio&amp;gt;0.25 Then
	CalculateScale = 0.25       ' Echelle 1:4
	Else If Ratio&amp;gt;0.2 Then
	CalculateScale = 0.2        ' Echelle 1:5
	Else If Ratio&amp;gt;0.1 Then
	CalculateScale = 0.1        ' Echelle 1:10
	Else If Ratio&amp;gt;0.05 Then
	CalculateScale = 0.05       ' Echelle 1:20
	Else If Ratio&amp;gt;0.04 Then
	CalculateScale = 0.04       ' Echelle 1:25
	Else If Ratio&amp;gt;0.02 Then
	CalculateScale = 0.02       ' Echelle 1:50
	Else If Ratio&amp;gt;0.01 Then
	CalculateScale = 0.01       ' Echelle 1:100
	Else If Ratio&amp;gt;0.005 Then
	CalculateScale = 0.005      ' Echelle 1:200
	Else
		CalculateScale = 0.01       ' Echelle 1:100 0.01 est la valeur par defaut si les autres echelles ne conviennent pas.
	End If

End Function&lt;/LI-CODE&gt;&lt;P&gt;Merci d'avance,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 08 Dec 2022 08:32:44 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11606035#M2733</guid>
      <dc:creator>alysonrssl</dc:creator>
      <dc:date>2022-12-08T08:32:44Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11606903#M2734</link>
      <description>&lt;P&gt;Bonjour, je pense que vous pouvez vous inspirer de ce post :&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;Dim Intent1 As GeometryIntent = ActiveSheet.CreateGeometryIntent(...&lt;/LI-CODE&gt;&lt;P&gt;&lt;A href="https://forums.autodesk.com/t5/inventor-ilogic-and-vb-net-forum/ilogic-create-dimension-using-named-geometry-in-idw/td-p/8838703" target="_blank"&gt;https://forums.autodesk.com/t5/inventor-ilogic-and-vb-net-forum/ilogic-create-dimension-using-named-geometry-in-idw/td-p/8838703&lt;/A&gt;&lt;/P&gt;&lt;P&gt;J'espère que cela pourra vous faire avancer.&lt;/P&gt;&lt;P&gt;Vincent.&lt;/P&gt;</description>
      <pubDate>Thu, 08 Dec 2022 15:23:35 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11606903#M2734</guid>
      <dc:creator>vpeuvion</dc:creator>
      <dc:date>2022-12-08T15:23:35Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11613521#M2735</link>
      <description>&lt;P&gt;Bonjour,&lt;BR /&gt;J'ai regardé un peu plus en détail votre code pendant la pause. L'erreur qui apparait vient du fait que vous utilisez "ActiveSheet".&lt;BR /&gt;Quand vous utilisez "ActiveSheet", vous utilisez la feuille de dessin en cours du document dans lequel s'éxecute la règle. Dans votre cas le document dans lequel s'éxecute la règle est un assemblage.&lt;BR /&gt;Vous ne pouvez pas utiliser "ActiveSheet", "ThisDrawing". Vous devez remplacer "ActiveSheet" par "NewDwg.ActiveSheet" comme à la ligne 42.&lt;BR /&gt;Malheureusement cela ne va pas résoudre tous vos problèmes.&lt;BR /&gt;Il y a plusieurs exemples sur le net qui montrent comment placer une cote par rapport à des faces nommées d'une pièce. Mais si j'ai bien compris vous voulez placer une cote par rapport à des faces nommées de 2 pièces qui se trouvent dans un assemblage.&lt;BR /&gt;Ce n'est plus du tout la même affaire!&lt;BR /&gt;Je pense que vous allez devoir créer des "FaceProxy" pour pouvoir accéder aux faces des pièces depuis l'assemblage.&lt;BR /&gt;Je n'ai pas beaucoup de temps en ce moment pour vous aider davantage. J'espère que ce post pourra éclaircir certains points.&lt;/P&gt;&lt;P&gt;Vincent.&lt;/P&gt;</description>
      <pubDate>Mon, 12 Dec 2022 08:00:31 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11613521#M2735</guid>
      <dc:creator>vpeuvion</dc:creator>
      <dc:date>2022-12-12T08:00:31Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11613956#M2736</link>
      <description>&lt;P&gt;J'ai fait un test avec un assemblage simple.&lt;BR /&gt;J'ai créé 2 pièces : Pièce1 avec un face nommée "FaceCarree" et Pièce2 avec une face nommée "FaceRonde".&lt;BR /&gt;J'ai placé ces 2 pièces espacées de 123 mm dans un assemblage nommé Assemblage.&lt;BR /&gt;J'ai créé une règle ilogic dans cet assemblage à partir de votre code. J'ai dû passer l'option Strict sur Off.&lt;BR /&gt;Le code est assez brut il peut être simplifié.&lt;BR /&gt;Pour des raisons de confidentialité, je ne peux pas transférer les fichiers, mais vous devriez pouvoir les recréer facilement avec les indications données.&lt;BR /&gt;Bon courage.&lt;/P&gt;&lt;P&gt;Vincent.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;U&gt;L'assemblage :&amp;nbsp;&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vpeuvion_0-1670844801922.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1151337iCEA55B62AD51F0E3/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vpeuvion_0-1670844801922.png" alt="vpeuvion_0-1670844801922.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vpeuvion_1-1670844814628.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1151338iE84D70FEE143C70A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vpeuvion_1-1670844814628.png" alt="vpeuvion_1-1670844814628.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;U&gt;Le résultat :&amp;nbsp;&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vpeuvion_2-1670844842078.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1151339i5E5D0BE0C65DC69B/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vpeuvion_2-1670844842078.png" alt="vpeuvion_2-1670844842078.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&lt;U&gt;Le code modifié :&lt;/U&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;Sub&lt;/SPAN&gt; &lt;SPAN&gt;Main&lt;/SPAN&gt;

	&lt;SPAN&gt;Const&lt;/SPAN&gt; &lt;SPAN&gt;GabaritDwg&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt; = &lt;SPAN&gt;"C:\Workspace_Vault\99_Administration\01_Templates\Current Version\Site Nantes\Standard templates\Standard KTSN.dwg"&lt;/SPAN&gt;

	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;ADoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;AssemblyDocument&lt;/SPAN&gt; = &lt;SPAN&gt;DirectCast&lt;/SPAN&gt;(&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;, &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;AssemblyDocument&lt;/SPAN&gt;)
	
&lt;SPAN&gt;'*****************************************************************************************************************************************************************&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyComponentDefinition&lt;/SPAN&gt; = &lt;SPAN&gt;ADoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oLeafOccs&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrencesEnumerator&lt;/SPAN&gt; = &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt;.&lt;SPAN&gt;Occurrences&lt;/SPAN&gt;.&lt;SPAN&gt;AllLeafOccurrences&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFaceProxy1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;FaceProxy&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFaceProxy2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;FaceProxy&lt;/SPAN&gt;
		
	&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oLeafOccs&lt;/SPAN&gt;
		 &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"Pièce1:1"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; = &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Definition&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;NamedEntities&lt;/SPAN&gt; = &lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;GetNamedEntities&lt;/SPAN&gt;(&lt;SPAN&gt;oDoc&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFace1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Face&lt;/SPAN&gt; = &lt;SPAN&gt;NamedEntities&lt;/SPAN&gt;.&lt;SPAN&gt;FindEntity&lt;/SPAN&gt;(&lt;SPAN&gt;"FaceCarree"&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Call&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;CreateGeometryProxy&lt;/SPAN&gt;(&lt;SPAN&gt;oFace1&lt;/SPAN&gt;, &lt;SPAN&gt;oFaceProxy1&lt;/SPAN&gt;)
		 &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
	&lt;SPAN&gt;Next&lt;/SPAN&gt;
	&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oLeafOccs&lt;/SPAN&gt;
		 &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"Pièce2:1"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; = &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Definition&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;NamedEntities&lt;/SPAN&gt; = &lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;GetNamedEntities&lt;/SPAN&gt;(&lt;SPAN&gt;oDoc&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFace2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Face&lt;/SPAN&gt; = &lt;SPAN&gt;NamedEntities&lt;/SPAN&gt;.&lt;SPAN&gt;FindEntity&lt;/SPAN&gt;(&lt;SPAN&gt;"FaceRonde"&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Call&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;CreateGeometryProxy&lt;/SPAN&gt;(&lt;SPAN&gt;oFace2&lt;/SPAN&gt;, &lt;SPAN&gt;oFaceProxy2&lt;/SPAN&gt;)
		 &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
	&lt;SPAN&gt;Next&lt;/SPAN&gt;		 
	
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oPoint1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Point2d&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;.&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;(4, 43)
	
&lt;SPAN&gt;'********************************************************************************************************************************************************************	&lt;/SPAN&gt;
	
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;NewDwg&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingDocument&lt;/SPAN&gt; = &lt;SPAN&gt;DirectCast&lt;/SPAN&gt;(&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;Documents&lt;/SPAN&gt;.&lt;SPAN&gt;Add&lt;/SPAN&gt;(&lt;SPAN&gt;DocumentTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kDrawingDocumentObject&lt;/SPAN&gt;, &lt;SPAN&gt;GabaritDwg&lt;/SPAN&gt;, &lt;SPAN&gt;True&lt;/SPAN&gt;), &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingDocument&lt;/SPAN&gt;)

	&lt;SPAN&gt;'*** Choix du format et de l'orientation&lt;/SPAN&gt;
	&lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;Size&lt;/SPAN&gt; = &lt;SPAN&gt;DrawingSheetSizeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kA2DrawingSheetSize&lt;/SPAN&gt;								&lt;SPAN&gt;'***A2&lt;/SPAN&gt;
	&lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;Orientation&lt;/SPAN&gt; = &lt;SPAN&gt;PageOrientationTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kPortraitPageOrientation&lt;/SPAN&gt;				&lt;SPAN&gt;'***PORTRAIT&lt;/SPAN&gt;

	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;NewSheet&lt;/SPAN&gt; = &lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;

	&lt;SPAN&gt;'*** Créer la vue de base à la moitié de la largeur de la feuille en H&lt;/SPAN&gt;
	&lt;SPAN&gt;'						  au 3/4 de la hauteur dela feuiille en V&lt;/SPAN&gt;

	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oTG&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;

	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;ViewCenter&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;Point2d&lt;/SPAN&gt; = &lt;SPAN&gt;oTG&lt;/SPAN&gt;.&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;(&lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;Width&lt;/SPAN&gt; / 2, &lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;Height&lt;/SPAN&gt; * 3 / 4)

	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;FrontView&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Inventor&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingView&lt;/SPAN&gt; = &lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingViews&lt;/SPAN&gt;.&lt;SPAN&gt;AddBaseView&lt;/SPAN&gt;(&lt;SPAN&gt;DirectCast&lt;/SPAN&gt;(&lt;SPAN&gt;ADoc&lt;/SPAN&gt;, &lt;SPAN&gt;_Document&lt;/SPAN&gt;), &lt;SPAN&gt;ViewCenter&lt;/SPAN&gt;, 1,
	&lt;SPAN&gt;ViewOrientationTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kRightViewOrientation&lt;/SPAN&gt;,
	&lt;SPAN&gt;DrawingViewStyleEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kHiddenLineRemovedDrawingViewStyle&lt;/SPAN&gt;)

	&lt;SPAN&gt;'	Dim TopView As Inventor.DrawingView = NewDwg.ActiveSheet.DrawingViews.AddAuxiliaryView(FrontView, DirectCast(ADoc, _Document), ViewCenter, 1,&lt;/SPAN&gt;
	&lt;SPAN&gt;'	ViewOrientationTypeEnum.kFrontViewOrientation,&lt;/SPAN&gt;
	&lt;SPAN&gt;'	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)&lt;/SPAN&gt;

	&lt;SPAN&gt;'*** SUPPRIMER LES SYMBOLES D'ESQUISSES DE LA NOUVELLE FEUILLE&lt;/SPAN&gt;
	&lt;SPAN&gt;'*** Supprimer le symbole "Cadre - Informations Générales"&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;SketchedSymbolDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;SketchedSymbol&lt;/SPAN&gt;
	&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;SketchedSymbolDef&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;SketchedSymbols&lt;/SPAN&gt;
		&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;SketchedSymbolDef&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"Cadre - Informations Générales"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
			&lt;SPAN&gt;SketchedSymbolDef&lt;/SPAN&gt;.&lt;SPAN&gt;Delete&lt;/SPAN&gt; &lt;SPAN&gt;'It will delete all the sketched symbols&lt;/SPAN&gt;
		&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
	&lt;SPAN&gt;Next&lt;/SPAN&gt;
	&lt;SPAN&gt;'*** Supprimer le symbole "Title Block - FR-EN - Support"&lt;/SPAN&gt;
	&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;SketchedSymbolDef&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;SketchedSymbols&lt;/SPAN&gt;
		&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;SketchedSymbolDef&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"Title Block - FR-EN - Support"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
			&lt;SPAN&gt;SketchedSymbolDef&lt;/SPAN&gt;.&lt;SPAN&gt;Delete&lt;/SPAN&gt; &lt;SPAN&gt;'It will delete all the sketched symbols&lt;/SPAN&gt;
		&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
	&lt;SPAN&gt;Next&lt;/SPAN&gt;

	&lt;SPAN&gt;'*** Ajuster l'échelle de la vue pour qu'elle ne dépasse PAS la moitié de la hauteur&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt; = (&lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;.&lt;SPAN&gt;Height&lt;/SPAN&gt; / 2) / &lt;SPAN&gt;FrontView&lt;/SPAN&gt;.&lt;SPAN&gt;Height&lt;/SPAN&gt;

	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;ViewScaleFrontView&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt; = &lt;SPAN&gt;CalculateScale&lt;/SPAN&gt;(&lt;SPAN&gt;Ratio&lt;/SPAN&gt;)

	&lt;SPAN&gt;FrontView&lt;/SPAN&gt;.&lt;SPAN&gt;ScaleString&lt;/SPAN&gt; = &lt;SPAN&gt;ViewScaleFrontView&lt;/SPAN&gt;.&lt;SPAN&gt;ToString&lt;/SPAN&gt;

	&lt;SPAN&gt;FrontView&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;FrontView&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt;.&lt;SPAN&gt;Replace&lt;/SPAN&gt;(&lt;SPAN&gt;"1"&lt;/SPAN&gt;, &lt;SPAN&gt;"FRONT VIEW"&lt;/SPAN&gt;)
&lt;SPAN&gt;'*************************************************************************************************************************************************************************	&lt;/SPAN&gt;
	
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oSheet&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Sheet&lt;/SPAN&gt; = &lt;SPAN&gt;NewDwg&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveSheet&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oView&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;DrawingView&lt;/SPAN&gt; = &lt;SPAN&gt;oSheet&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingViews&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(1)


	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oCurve1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;DrawingCurvesEnumerator&lt;/SPAN&gt;
	&lt;SPAN&gt;oCurve1&lt;/SPAN&gt; = &lt;SPAN&gt;oView&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingCurves&lt;/SPAN&gt;(&lt;SPAN&gt;oFaceProxy1&lt;/SPAN&gt;)
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;finalCurve1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;DrawingCurve&lt;/SPAN&gt;
	&lt;SPAN&gt;finalCurve1&lt;/SPAN&gt; = &lt;SPAN&gt;oCurve1&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(1)
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oMidPoint1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Point2d&lt;/SPAN&gt; = &lt;SPAN&gt;finalCurve1&lt;/SPAN&gt;.&lt;SPAN&gt;CenterPoint&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oIntent1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;GeometryIntent&lt;/SPAN&gt; = &lt;SPAN&gt;oSheet&lt;/SPAN&gt;.&lt;SPAN&gt;CreateGeometryIntent&lt;/SPAN&gt;(&lt;SPAN&gt;finalCurve1&lt;/SPAN&gt;,&lt;SPAN&gt;oMidPoint1&lt;/SPAN&gt;)
		
		
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oCurve2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;DrawingCurvesEnumerator&lt;/SPAN&gt;
	&lt;SPAN&gt;oCurve2&lt;/SPAN&gt; = &lt;SPAN&gt;oView&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingCurves&lt;/SPAN&gt;(&lt;SPAN&gt;oFaceProxy2&lt;/SPAN&gt;)
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;finalCurve2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;DrawingCurve&lt;/SPAN&gt;
	&lt;SPAN&gt;finalCurve2&lt;/SPAN&gt; = &lt;SPAN&gt;oCurve2&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(1)
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oMidPoint2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Point2d&lt;/SPAN&gt; = &lt;SPAN&gt;finalCurve2&lt;/SPAN&gt;.&lt;SPAN&gt;CenterPoint&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oIntent2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;GeometryIntent&lt;/SPAN&gt; = &lt;SPAN&gt;oSheet&lt;/SPAN&gt;.&lt;SPAN&gt;CreateGeometryIntent&lt;/SPAN&gt;(&lt;SPAN&gt;finalCurve2&lt;/SPAN&gt;,&lt;SPAN&gt;oMidPoint2&lt;/SPAN&gt;)

	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;genDims&lt;/SPAN&gt; = &lt;SPAN&gt;oSheet&lt;/SPAN&gt;.&lt;SPAN&gt;DrawingDimensions&lt;/SPAN&gt;.&lt;SPAN&gt;GeneralDimensions&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;linDim1&lt;/SPAN&gt; = &lt;SPAN&gt;genDims&lt;/SPAN&gt;.&lt;SPAN&gt;AddLinear&lt;/SPAN&gt;(&lt;SPAN&gt;oPoint1&lt;/SPAN&gt;, &lt;SPAN&gt;oIntent1&lt;/SPAN&gt;, &lt;SPAN&gt;oIntent2&lt;/SPAN&gt;)
&lt;SPAN&gt;'*******************************************************************************************************************************************************************************&lt;/SPAN&gt;
&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;Sub&lt;/SPAN&gt;


&lt;SPAN&gt;Function&lt;/SPAN&gt; &lt;SPAN&gt;CalculateScale&lt;/SPAN&gt;(&lt;SPAN&gt;Ratio&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt;) &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;200 &lt;SPAN&gt;Then&lt;/SPAN&gt;
		&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 200    &lt;SPAN&gt;' Echelle 200:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;100 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 100        &lt;SPAN&gt;' Echelle 100:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;50 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 50         &lt;SPAN&gt;' Echelle 50:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;25 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 25         &lt;SPAN&gt;' Echelle 25:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;20 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 20         &lt;SPAN&gt;' Echelle 20:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;10 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 10         &lt;SPAN&gt;' Echelle 10:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;5 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 5          &lt;SPAN&gt;' Echelle 5:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;2 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 2          &lt;SPAN&gt;' Echelle 2:1       &lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;1 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 1          &lt;SPAN&gt;' Echelle 1:1&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.5 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.5        &lt;SPAN&gt;' Echelle 1:2&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.25 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.25       &lt;SPAN&gt;' Echelle 1:4&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.2 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.2        &lt;SPAN&gt;' Echelle 1:5&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.1 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.1        &lt;SPAN&gt;' Echelle 1:10&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.05 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.05       &lt;SPAN&gt;' Echelle 1:20&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.04 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.04       &lt;SPAN&gt;' Echelle 1:25&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.02 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.02       &lt;SPAN&gt;' Echelle 1:50&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.01 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.01       &lt;SPAN&gt;' Echelle 1:100&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Ratio&lt;/SPAN&gt;&amp;gt;0.005 &lt;SPAN&gt;Then&lt;/SPAN&gt;
	&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.005      &lt;SPAN&gt;' Echelle 1:200&lt;/SPAN&gt;
	&lt;SPAN&gt;Else&lt;/SPAN&gt;
		&lt;SPAN&gt;CalculateScale&lt;/SPAN&gt; = 0.01       &lt;SPAN&gt;' Echelle 1:100 0.01 est la valeur par defaut si les autres echelles ne conviennent pas.&lt;/SPAN&gt;
	&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;

&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;Function&lt;/SPAN&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2022-12-12_12-41-39.png" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1151346iB9600559D87B5781/image-size/large?v=v2&amp;amp;px=999" role="button" title="2022-12-12_12-41-39.png" alt="2022-12-12_12-41-39.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2022-12-12_12-41-54.png" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1151347i49BBC4F8BD48DBE7/image-size/large?v=v2&amp;amp;px=999" role="button" title="2022-12-12_12-41-54.png" alt="2022-12-12_12-41-54.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 12 Dec 2022 11:45:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11613956#M2736</guid>
      <dc:creator>vpeuvion</dc:creator>
      <dc:date>2022-12-12T11:45:57Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11616658#M2737</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/8016681"&gt;@vpeuvion&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Bonjour, merci pour tes réponses,&lt;/P&gt;&lt;P&gt;Je suis passée sur un autre sujet, j'essaye donc ta solution dès que possible dans la semaine et je reviens vers toi pour la valider ou non, merci beaucoup !&lt;/P&gt;</description>
      <pubDate>Tue, 13 Dec 2022 10:42:38 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11616658#M2737</guid>
      <dc:creator>alysonrssl</dc:creator>
      <dc:date>2022-12-13T10:42:38Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11619202#M2738</link>
      <description>&lt;P&gt;Bonjour &lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/8016681"&gt;@vpeuvion&lt;/a&gt;, je viens de tester ta solution qui fonctionne parfaitement par contre, est ce que cela ne risque pas de causer des problèmes d'avoir mis le Option Strict Off ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Voici donc mon nouveau code :&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="visual-basic"&gt;Option Explicit On
Option Strict Off
Sub main

	Const GabaritDwg As String = "C:\Workspace_Vault\99_Administration\01_Templates\Current Version\Site Nantes\Standard templates\Standard KTSN.dwg"

	Dim ADoc As Inventor.AssemblyDocument = DirectCast(ThisApplication.ActiveDocument, Inventor.AssemblyDocument)

	Dim oAsmDef As AssemblyComponentDefinition = ADoc.ComponentDefinition

	Dim oLeafOccs As ComponentOccurrencesEnumerator = oAsmDef.Occurrences.AllLeafOccurrences


	'*** Déclaration et récupération des faces nommées dans les ipt 

	Dim oFaceProxy1 As FaceProxy

	Dim oFaceProxy2 As FaceProxy

	For Each oComponent As ComponentOccurrence In oLeafOccs
		If oComponent.Name = "SUP-6141-BEARING SUPPORT:1" Then
			Dim oDoc As PartDocument = oComponent.Definition.Document
			Dim NamedEntities = iLogicVb.Automation.GetNamedEntities(oDoc)
			Dim oFace1 As Face = NamedEntities.FindEntity("Upperface")
			Call oComponent.CreateGeometryProxy(oFace1, oFaceProxy1)
		End If
		
	Next
	For Each oComponent As ComponentOccurrence In oLeafOccs
		If oComponent.Name = "SUP-6141-SUPPORT PLATE:1" Then
			Dim oDoc As PartDocument = oComponent.Definition.Document
			Dim NamedEntities = iLogicVb.Automation.GetNamedEntities(oDoc)
			Dim oFace2 As Face = NamedEntities.FindEntity("Lowerface")
			Call oComponent.CreateGeometryProxy(oFace2, oFaceProxy2)
		End If
	Next

	'***Déclaration du DWG et de la feuille active

	Dim NewDwg As Inventor.DrawingDocument = DirectCast(ThisApplication.Documents.Add(DocumentTypeEnum.kDrawingDocumentObject, GabaritDwg, True), Inventor.DrawingDocument)

	Dim oSheet As Sheet = NewDwg.ActiveSheet
	
	
	'*** Choix du format et de l'orientation
	oSheet.Size = DrawingSheetSizeEnum.kA2DrawingSheetSize								'***A2
	oSheet.Orientation = PageOrientationTypeEnum.kPortraitPageOrientation				'***PORTRAIT

	'*** Créer la vue de base à la moitié de la largeur de la feuille en H
	'						  au 3/4 de la hauteur dela feuiille en V

	Dim oTG As Inventor.TransientGeometry = ThisApplication.TransientGeometry

	Dim ViewCenter As Inventor.Point2d = oTG.CreatePoint2d(oSheet.Width / 2, oSheet.Height * 3 / 4)

	Dim FrontView As Inventor.DrawingView = oSheet.DrawingViews.AddBaseView(DirectCast(ADoc, _Document), ViewCenter, 1,
	ViewOrientationTypeEnum.kFrontViewOrientation,
	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'*** Créer la vue projetée à la moitié de la largeur de la feuille en H
	'						   au 2/4 de la hauteur dela feuiille en V
	ViewCenter = oTG.CreatePoint2d(oSheet.Width / 2, oSheet.Height * 2 / 4)

	Dim TopView As Inventor.DrawingView = oSheet.DrawingViews.AddProjectedView(FrontView, ViewCenter,
	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'*** SUPPRIMER LES SYMBOLES D'ESQUISSES DE LA NOUVELLE FEUILLE
	'*** Supprimer le symbole "Cadre - Informations Générales"
	Dim SketchedSymbolDef As SketchedSymbol
	For Each SketchedSymbolDef In oSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Cadre - Informations Générales" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next
	'*** Supprimer le symbole "Title Block - FR-EN - Support"
	For Each SketchedSymbolDef In oSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Title Block - FR-EN - Support" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next

	'*** Ajuster l'échelle de la vue pour qu'elle ne dépasse PAS la moitié de la hauteur
	Dim Ratio As Double = (oSheet.Height / 4) / FrontView.Height

	Dim ViewScaleFrontView As Double = CalculateScale(Ratio)

	FrontView.ScaleString = ViewScaleFrontView.ToString

	FrontView.Name = FrontView.Name.Replace("1", "FRONT VIEW")
	
	TopView.Name = TopView.Name.Replace("2", "TOP VIEW")
	
	'***Création d'un point 2d pour centrée le texte de la côte

	Dim oPoint1 As Point2d = ThisApplication.TransientGeometry.CreatePoint2d(((FrontView.Center.X) + FrontView.Height * 0.8), (FrontView.Center.Y))

'*** Création des intentions de géométries selon les faces nommées déjà récupérées

	Dim oCurve1 As DrawingCurvesEnumerator
	oCurve1 = FrontView.DrawingCurves(oFaceProxy1)
	Dim finalCurve1 As DrawingCurve
	finalCurve1 = oCurve1.Item(1)
	Dim oMidPoint1 As Point2d = finalCurve1.CenterPoint
	Dim oIntent1 As GeometryIntent = oSheet.CreateGeometryIntent(finalCurve1, oMidPoint1)

	Dim oCurve2 As DrawingCurvesEnumerator
	oCurve2 = FrontView.DrawingCurves(oFaceProxy2)
	Dim finalCurve2 As DrawingCurve
	finalCurve2 = oCurve2.Item(1)
	Dim oMidPoint2 As Point2d = finalCurve2.CenterPoint
	Dim oIntent2 As GeometryIntent = oSheet.CreateGeometryIntent(finalCurve2, oMidPoint2)
	
	'*** Création de la côte selon les géometries d'intention et le point 2D

	Dim genDims = oSheet.DrawingDimensions.GeneralDimensions

	Dim linDim1 = genDims.AddLinear(oPoint1, oIntent1, oIntent2)


End Sub


Function CalculateScale(Ratio As Double) As Double
	If Ratio&amp;gt;200 Then
		CalculateScale = 200    ' Echelle 200:1
	Else If Ratio&amp;gt;100 Then
	CalculateScale = 100        ' Echelle 100:1
	Else If Ratio&amp;gt;50 Then
	CalculateScale = 50         ' Echelle 50:1
	Else If Ratio&amp;gt;25 Then
	CalculateScale = 25         ' Echelle 25:1
	Else If Ratio&amp;gt;20 Then
	CalculateScale = 20         ' Echelle 20:1
	Else If Ratio&amp;gt;10 Then
	CalculateScale = 10         ' Echelle 10:1
	Else If Ratio&amp;gt;5 Then
	CalculateScale = 5          ' Echelle 5:1
	Else If Ratio&amp;gt;2 Then
	CalculateScale = 2          ' Echelle 2:1       
	Else If Ratio&amp;gt;1 Then
	CalculateScale = 1          ' Echelle 1:1
	Else If Ratio&amp;gt;0.5 Then
	CalculateScale = 0.5        ' Echelle 1:2
	Else If Ratio&amp;gt;0.25 Then
	CalculateScale = 0.25       ' Echelle 1:4
	Else If Ratio&amp;gt;0.2 Then
	CalculateScale = 0.2        ' Echelle 1:5
	Else If Ratio&amp;gt;0.1 Then
	CalculateScale = 0.1        ' Echelle 1:10
	Else If Ratio&amp;gt;0.05 Then
	CalculateScale = 0.05       ' Echelle 1:20
	Else If Ratio&amp;gt;0.04 Then
	CalculateScale = 0.04       ' Echelle 1:25
	Else If Ratio&amp;gt;0.02 Then
	CalculateScale = 0.02       ' Echelle 1:50
	Else If Ratio&amp;gt;0.01 Then
	CalculateScale = 0.01       ' Echelle 1:100
	Else If Ratio&amp;gt;0.005 Then
	CalculateScale = 0.005      ' Echelle 1:200
	Else
		CalculateScale = 0.01       ' Echelle 1:100 0.01 est la valeur par defaut si les autres echelles ne conviennent pas.
	End If

End Function&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 14 Dec 2022 09:00:54 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11619202#M2738</guid>
      <dc:creator>alysonrssl</dc:creator>
      <dc:date>2022-12-14T09:00:54Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11619533#M2739</link>
      <description>&lt;P&gt;Bonjour&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/12549807"&gt;@alysonrssl&lt;/a&gt;&amp;nbsp;. J'ai écrit ce code pendant la pause et comme indiqué c'est un code brut pour donner un exemple. Je ne savais pas si l'option Strict était une imposition de ton entreprise ou pas.&lt;/P&gt;&lt;P&gt;En effet, il vaut mieux rester avec cette option sur On.&lt;/P&gt;&lt;P&gt;Ci-joint un lien qui explique les actions de cette option :&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://learn.microsoft.com/en-us/dotnet/visual-basic/language-reference/statements/option-strict-statement" target="_blank" rel="noopener"&gt;Option Strict Statement - Visual Basic | Microsoft Learn&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Ci-joint un extrait du code modifié pour que l'option Strict On ne crée pas d'erreur de compilation :&lt;/P&gt;&lt;PRE&gt;	&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oLeafOccs&lt;/SPAN&gt;
		 &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"Pièce1:1"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; = &lt;STRONG&gt;CType(&lt;/STRONG&gt;&lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Definition&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;&lt;STRONG&gt;,PartDocument)&lt;/STRONG&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;NamedEntities&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;NamedEntities&lt;/SPAN&gt; = &lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;GetNamedEntities&lt;/SPAN&gt;(&lt;STRONG&gt;CType(&lt;/STRONG&gt;&lt;SPAN&gt;oDoc&lt;/SPAN&gt;&lt;STRONG&gt;,Document)&lt;/STRONG&gt;)
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFace1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Face&lt;/SPAN&gt; = &lt;STRONG&gt;CType(&lt;/STRONG&gt;&lt;SPAN&gt;NamedEntities&lt;/SPAN&gt;.&lt;SPAN&gt;FindEntity&lt;/SPAN&gt;(&lt;SPAN&gt;"FaceCarree"&lt;/SPAN&gt;)&lt;STRONG&gt;,Face)&lt;/STRONG&gt;
			 &lt;SPAN&gt;Call&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;CreateGeometryProxy&lt;/SPAN&gt;(&lt;STRONG&gt;CType(&lt;/STRONG&gt;&lt;SPAN&gt;oFace1&lt;/SPAN&gt;&lt;STRONG&gt;,Object)&lt;/STRONG&gt;, &lt;STRONG&gt;CType(&lt;/STRONG&gt;&lt;SPAN&gt;oFaceProxy1&lt;/SPAN&gt;&lt;STRONG&gt;,Object)&lt;/STRONG&gt;)
		 &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
	&lt;SPAN&gt;Next&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 14 Dec 2022 12:43:36 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11619533#M2739</guid>
      <dc:creator>vpeuvion</dc:creator>
      <dc:date>2022-12-14T12:43:36Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11621758#M2740</link>
      <description>&lt;P&gt;Bonjour&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/8016681"&gt;@vpeuvion&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;&lt;P&gt;J'avais tenté de remettre le strict on en mettant des DirectCast dans le For...Each et en exécutant la règle la côte demandée n’apparaît pas, je viens d'essayer avec ton bout de code et j'ai la même chose, aucun message d'erreur même à l’exécution mais il manque la côte&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="visual-basic"&gt;Sub main

	Const GabaritDwg As String = "C:\Workspace_Vault\99_Administration\01_Templates\Current Version\Site Nantes\Standard templates\Standard KTSN.dwg"

	Dim ADoc As Inventor.AssemblyDocument = DirectCast(ThisApplication.ActiveDocument, Inventor.AssemblyDocument)

	Dim oAsmDef As AssemblyComponentDefinition = ADoc.ComponentDefinition

	Dim oLeafOccs As ComponentOccurrencesEnumerator = oAsmDef.Occurrences.AllLeafOccurrences


	'*** Déclaration et récupération des faces nommées dans les ipt 

	Dim oFaceProxy1 As FaceProxy

	Dim oFaceProxy2 As FaceProxy

	For Each oComponent As ComponentOccurrence In oLeafOccs
		 If oComponent.Name = "SUP-6141-BEARING SUPPORT:1" Then
			 Dim oDoc As PartDocument = CType(oComponent.Definition.Document,PartDocument)
			 Dim NamedEntities As NamedEntities = iLogicVb.Automation.GetNamedEntities(CType(oDoc,Document))
			 Dim oFace1 As Face = CType(NamedEntities.FindEntity("Upperface"),Face)
			 Call oComponent.CreateGeometryProxy(CType(oFace1,Object), CType(oFaceProxy1,Object))
		 End If
		
	Next
		For Each oComponent As ComponentOccurrence In oLeafOccs
		 If oComponent.Name = "SUP-6141-SUPPORT PLATE:1" Then
			 Dim oDoc As PartDocument = CType(oComponent.Definition.Document,PartDocument)
			 Dim NamedEntities As NamedEntities = iLogicVb.Automation.GetNamedEntities(CType(oDoc,Document))
			 Dim oFace1 As Face = CType(NamedEntities.FindEntity("Lowerface"),Face)
			 Call oComponent.CreateGeometryProxy(CType(oFace1,Object), CType(oFaceProxy1,Object))
		End If
	Next

	'***Déclaration du DWG et de la feuille active

	Dim NewDwg As Inventor.DrawingDocument = DirectCast(ThisApplication.Documents.Add(DocumentTypeEnum.kDrawingDocumentObject, GabaritDwg, True), Inventor.DrawingDocument)

	Dim oSheet As Sheet = NewDwg.ActiveSheet
	
	
	'*** Choix du format et de l'orientation
	oSheet.Size = DrawingSheetSizeEnum.kA2DrawingSheetSize								'***A2
	oSheet.Orientation = PageOrientationTypeEnum.kPortraitPageOrientation				'***PORTRAIT

	'*** Créer la vue de base à la moitié de la largeur de la feuille en H
	'						  au 3/4 de la hauteur dela feuiille en V

	Dim oTG As Inventor.TransientGeometry = ThisApplication.TransientGeometry

	Dim ViewCenter As Inventor.Point2d = oTG.CreatePoint2d(oSheet.Width / 2, oSheet.Height * 3 / 4)

	Dim FrontView As Inventor.DrawingView = oSheet.DrawingViews.AddBaseView(DirectCast(ADoc, _Document), ViewCenter, 1,
	ViewOrientationTypeEnum.kFrontViewOrientation,
	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'*** Créer la vue projetée à la moitié de la largeur de la feuille en H
	'						   au 2/4 de la hauteur dela feuiille en V
	ViewCenter = oTG.CreatePoint2d(oSheet.Width / 2, oSheet.Height * 2 / 4)

	Dim TopView As Inventor.DrawingView = oSheet.DrawingViews.AddProjectedView(FrontView, ViewCenter,
	DrawingViewStyleEnum.kHiddenLineRemovedDrawingViewStyle)

	'*** SUPPRIMER LES SYMBOLES D'ESQUISSES DE LA NOUVELLE FEUILLE
	'*** Supprimer le symbole "Cadre - Informations Générales"
	Dim SketchedSymbolDef As SketchedSymbol
	For Each SketchedSymbolDef In oSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Cadre - Informations Générales" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next
	'*** Supprimer le symbole "Title Block - FR-EN - Support"
	For Each SketchedSymbolDef In oSheet.SketchedSymbols
		If SketchedSymbolDef.Name = "Title Block - FR-EN - Support" Then
			SketchedSymbolDef.Delete 'It will delete all the sketched symbols
		End If
	Next

	'*** Ajuster l'échelle de la vue pour qu'elle ne dépasse PAS la moitié de la hauteur
	Dim Ratio As Double = (oSheet.Height / 4) / FrontView.Height

	Dim ViewScaleFrontView As Double = CalculateScale(Ratio)

	FrontView.ScaleString = ViewScaleFrontView.ToString

	FrontView.Name = FrontView.Name.Replace("1", "FRONT VIEW")
	
	TopView.Name = TopView.Name.Replace("2", "TOP VIEW")
	
	'***Création d'un point 2d pour centrée le texte de la côte

	Dim oPoint1 As Point2d = ThisApplication.TransientGeometry.CreatePoint2d(((FrontView.Center.X) + FrontView.Height * 0.8), (FrontView.Center.Y))

'*** Création des intentions de géométries selon les faces nommées déjà récupérées

	Dim oCurve1 As DrawingCurvesEnumerator
	oCurve1 = FrontView.DrawingCurves(oFaceProxy1)
	Dim finalCurve1 As DrawingCurve
	finalCurve1 = oCurve1.Item(1)
	Dim oMidPoint1 As Point2d = finalCurve1.CenterPoint
	Dim oIntent1 As GeometryIntent = oSheet.CreateGeometryIntent(finalCurve1, oMidPoint1)

	Dim oCurve2 As DrawingCurvesEnumerator
	oCurve2 = FrontView.DrawingCurves(oFaceProxy2)
	Dim finalCurve2 As DrawingCurve
	finalCurve2 = oCurve2.Item(1)
	Dim oMidPoint2 As Point2d = finalCurve2.CenterPoint
	Dim oIntent2 As GeometryIntent = oSheet.CreateGeometryIntent(finalCurve2, oMidPoint2)
	
	'*** Création de la côte selon les géometries d'intention et le point 2D

	Dim genDims = oSheet.DrawingDimensions.GeneralDimensions

	Dim linDim1 = genDims.AddLinear(oPoint1, oIntent1, oIntent2)


End Sub&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 15 Dec 2022 07:55:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11621758#M2740</guid>
      <dc:creator>alysonrssl</dc:creator>
      <dc:date>2022-12-15T07:55:45Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11624391#M2741</link>
      <description>&lt;P&gt;Bonjour&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/12549807"&gt;@alysonrssl&lt;/a&gt;&amp;nbsp;. J'ai testé de mon côté et j'ai le même comportement. Je pense que cela vient du "ByRef Result As Object"&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vpeuvion_0-1671176320496.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1153290iF59A4D936C2CA806/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vpeuvion_0-1671176320496.png" alt="vpeuvion_0-1671176320496.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;J'ai remplacé cette ligne de code par 3 lignes et ajouté = Nothing dans la déclaration des FaceProxy.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vpeuvion_1-1671176435781.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1153291i9A0021737293357C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vpeuvion_1-1671176435781.png" alt="vpeuvion_1-1671176435781.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Avec ces modifications, ça fonctionne de mon côté.&lt;/P&gt;&lt;PRE&gt;	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFaceProxy1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;FaceProxy&lt;/SPAN&gt; = &lt;SPAN&gt;Nothing&lt;/SPAN&gt;
	&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFaceProxy2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;FaceProxy&lt;/SPAN&gt; = &lt;SPAN&gt;Nothing&lt;/SPAN&gt;
		
	&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oLeafOccs&lt;/SPAN&gt;
		 &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"Pièce1:1"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; = &lt;SPAN&gt;CType&lt;/SPAN&gt;(&lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Definition&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;,&lt;SPAN&gt;PartDocument&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oNamedEntities&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;NamedEntities&lt;/SPAN&gt; = &lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;GetNamedEntities&lt;/SPAN&gt;(&lt;SPAN&gt;CType&lt;/SPAN&gt;(&lt;SPAN&gt;oDoc&lt;/SPAN&gt;,&lt;SPAN&gt;Document&lt;/SPAN&gt;))
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFace1&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Face&lt;/SPAN&gt; = &lt;SPAN&gt;CType&lt;/SPAN&gt;(&lt;SPAN&gt;oNamedEntities&lt;/SPAN&gt;.&lt;SPAN&gt;FindEntity&lt;/SPAN&gt;(&lt;SPAN&gt;"FaceCarree"&lt;/SPAN&gt;), &lt;SPAN&gt;Face&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oObjet&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Object&lt;/SPAN&gt; = &lt;SPAN&gt;Nothing&lt;/SPAN&gt;
			 &lt;SPAN&gt;Call&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;CreateGeometryProxy&lt;/SPAN&gt;(&lt;SPAN&gt;oFace1&lt;/SPAN&gt;, &lt;SPAN&gt;oObjet&lt;/SPAN&gt;)
			 &lt;SPAN&gt;oFaceProxy1&lt;/SPAN&gt;  = &lt;SPAN&gt;TryCast&lt;/SPAN&gt;(&lt;SPAN&gt;oObjet&lt;/SPAN&gt;,&lt;SPAN&gt;FaceProxy&lt;/SPAN&gt;)
			 		 
&lt;SPAN&gt;'			 Call oComponent.CreateGeometryProxy(oFace1, CType(oFaceProxy1,FaceProxy))&lt;/SPAN&gt;
		 &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
	 &lt;SPAN&gt;Next&lt;/SPAN&gt; 
	&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oLeafOccs&lt;/SPAN&gt;
		 &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"Pièce2:1"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; = &lt;SPAN&gt;CType&lt;/SPAN&gt;(&lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;Definition&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;,&lt;SPAN&gt;PartDocument&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oNamedEntities&lt;/SPAN&gt; = &lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;GetNamedEntities&lt;/SPAN&gt;(&lt;SPAN&gt;CType&lt;/SPAN&gt;(&lt;SPAN&gt;oDoc&lt;/SPAN&gt;,&lt;SPAN&gt;Document&lt;/SPAN&gt;))
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFace2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Face&lt;/SPAN&gt; = &lt;SPAN&gt;CType&lt;/SPAN&gt;(&lt;SPAN&gt;oNamedEntities&lt;/SPAN&gt;.&lt;SPAN&gt;FindEntity&lt;/SPAN&gt;(&lt;SPAN&gt;"FaceRonde"&lt;/SPAN&gt;), &lt;SPAN&gt;Face&lt;/SPAN&gt;)
			 &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oObjet2&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Object&lt;/SPAN&gt; = &lt;SPAN&gt;Nothing&lt;/SPAN&gt;
			 &lt;SPAN&gt;Call&lt;/SPAN&gt; &lt;SPAN&gt;oComponent&lt;/SPAN&gt;.&lt;SPAN&gt;CreateGeometryProxy&lt;/SPAN&gt;(&lt;SPAN&gt;oFace2&lt;/SPAN&gt;, &lt;SPAN&gt;oObjet2&lt;/SPAN&gt;)
			 &lt;SPAN&gt;oFaceProxy2&lt;/SPAN&gt;  = &lt;SPAN&gt;TryCast&lt;/SPAN&gt;(&lt;SPAN&gt;oObjet2&lt;/SPAN&gt;,&lt;SPAN&gt;FaceProxy&lt;/SPAN&gt;)
			 
			 &lt;SPAN&gt;'Call oComponent.CreateGeometryProxy(oFace2, CType(oFaceProxy2,FaceProxy))&lt;/SPAN&gt;
		 &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
	&lt;SPAN&gt;Next&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;Si tu peux tester et me dire si ça fonctionne aussi pour toi.&lt;/P&gt;&lt;P&gt;Vincent.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Dec 2022 07:47:58 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11624391#M2741</guid>
      <dc:creator>vpeuvion</dc:creator>
      <dc:date>2022-12-16T07:47:58Z</dc:date>
    </item>
    <item>
      <title>Re: iLogic - Création de côte automatique</title>
      <link>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11631714#M2742</link>
      <description>&lt;P&gt;Bonjour&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/8016681"&gt;@vpeuvion&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;Je viens de tester ça fonctionne,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Merci beaucoup pour ton temps !&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 20 Dec 2022 13:05:00 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-forum-francais/ilogic-creation-de-cote-automatique/m-p/11631714#M2742</guid>
      <dc:creator>alysonrssl</dc:creator>
      <dc:date>2022-12-20T13:05:00Z</dc:date>
    </item>
  </channel>
</rss>

