a new aircraft fuselage configuration? easy with gef4! · 2017-06-23 · allow unconventionnal...

39
Delivering Transformation. Together. Ref. template : QS-TEM-presentation-E -20151001 A NEW AIRCRAFT FUSELAGE CONFIGURATION? Easy with GEF4! EclipseCon France 2017 Xavier JACQUES Ref. presentation : EclipseCon France 2017

Upload: others

Post on 17-Apr-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

Delivering Transformation. Together.

Ref

. tem

pla

te :

QS-

TEM

-pre

sen

tati

on

-E -

2015

1001

A NEW AIRCRAFT FUSELAGE CONFIGURATION?

Easy with GEF4!

EclipseCon France 2017 Xavier JACQUES

Ref. presentation : EclipseCon France 2017

Page 2: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

AGENDA

Ref. presentation : EclipseCon France 2017

1. User interactions

2. Main GEF4 components

3. Geometry 2D/3D calculation

4. Cabin simulator video

2

Page 3: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

INTRO

Ref. presentation : EclipseCon France 2017

Main Airbus requirements

Easy to use

Allow unconventionnal aircraft configuration

Precise geometry calculation

Graphical Editing Framework (GEF4)

Provide components to create graphical application

Rendered in JAVA FX Scene

Project started mid 2015

GEF4 was only in its first snapshot V0.1.0 (Mars release)

Currently using GEF4 V1.0.0 (Neon release)

3

Page 4: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

MAIN VIEW

Ref. presentation : EclipseCon France 2017 4

Page 5: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

DECK VIEWS

Ref. presentation : EclipseCon France 2017

Passenger deck

Cargo deck

5

Page 6: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

Ref. presentation : EclipseCon France 2017 6

USER INTERACTIONS

Page 7: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

ZOOM IN/OUT - PAN

Ref. presentation : EclipseCon France 2017

Easy moves

Line thickness adapted to zoom level

Can I navigate

easily on my

layouts?

7

Page 8: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

HOVER

Ref. presentation : EclipseCon France 2017

Selection hover

Hover menu

How can I

interact with

elements?

8

Page 9: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

CLICKABLE AREA

Ref. presentation : EclipseCon France 2017

Increase hover trigger area

It’s difficult to

select certain

elements

9

Page 10: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

PALETTE

Ref. presentation : EclipseCon France 2017

Focusable palette

How can I

interact with

the view?

10

Page 11: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

JAVA FX COMPONENT INTEGRATION

Ref. presentation : EclipseCon France 2017

Viewer overlay or underlay

Right click palette – JAVA FX Popup

Can I easily

create

elements?

11

Page 12: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

JAVA FX COMPONENT INTEGRATION

Ref. presentation : EclipseCon France 2017

JAVA FX TableView

Can I have

cabin info on

the view?

12

Page 13: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

ELEMENTS CREATION

Ref. presentation : EclipseCon France 2017

It should be

very fast to

create seats

13

Page 14: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

FRONT VIEW

Ref. presentation : EclipseCon France 2017

Height element positioning check

I’d like to see

aircraft section

at location I

want

14

Page 15: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

MEASUREMENTS

Ref. presentation : EclipseCon France 2017

Measure spacing between every elements

I’d like to

measure

everything in the

cabin

15

Page 16: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

Ref. presentation : EclipseCon France 2017 16

MAIN GEF4 COMPONENTS

Page 17: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

MVC ARCHITECTURE

Ref. presentation : EclipseCon France 2017

MvcModule (Configuration)

Configure

Bindings

VisualPart (Controller)

PartFactory Create

Policy Behavior

Visual

Viewer (View)

Content (Model)

Bound to

Create

Refresh

*

1

17

Page 18: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

VISUALPART

Ref. presentation : EclipseCon France 2017

Manage visual to be rendered in the viewer

Created by PartFactory with its associated content

IContentPart

IFeedbackPart

IHandlePart

18

MvcModule Configure

Bindings

Visual Part

Part Factory

Create

Policy Behavior

Visual

Viewer

Content

Bound

to

Create

Refresh

*

1

Page 19: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

MODULE

Ref. presentation : EclipseCon France 2017

Base class MvcModule

MvcFxModule provided for JAVA FX with default bindings for

Hover

Feedback

Selection

Mouse scroll

MvcFxModule can be overrided to Add/Change/Remove default bindings

19

MvcModule Configure

Bindings

Visual Part

Part Factory

Create

Policy Behavior

Visual

Viewer

Content

Bound

to

Create

Refresh

*

1

Page 20: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

VIEWER

Ref. presentation : EclipseCon France 2017

Default implementation provided as FXViewer (JAVA FX)

Populated by VisualParts

State represented with internal models

ContentModel

SelectionModel

FocusModel

HoverModel

ContentModel and SelectionModel can be manipulated after an user interaction

20

MvcModule Configure

Bindings

Visual Part

Part Factory

Create

Policy Behavior

Visual

Viewer

Content

Bound

to

Create

Refresh

*

1

Page 21: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

POLICY

Ref. presentation : EclipseCon France 2017

Bound to a IVisualPart

2 different Policy types

Interaction

Transaction

Usage examples

IVisualPart creation

Change geometry element thickness on zoom in/out

Drag & Drop elements

Right click palette creation

Hover menu click

21

MvcModule Configure

Bindings

Visual Part

Part Factory

Create

Policy Behavior

Visual

Viewer

Content

Bound

to

Create

Refresh

*

1

Page 22: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

BEHAVIOR

Ref. presentation : EclipseCon France 2017

Bound to a IVisualPart

Actively listens to Viewer model changes

Selection behavior provided is reponsible to create/delete feeback and handle parts

Usage examples

Selection behavior overriden to remove handle parts creation

Clickable area default size change

Palette focus feedback change

22

MvcModule Configure

Bindings

Visual Part

Part Factory

Create

Policy Behavior

Visual

Viewer

Content

Bound

to

Create

Refresh

*

1

Page 23: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

Ref. presentation : EclipseCon France 2017 23

GEOMETRY 2D/3D CALCULATION

Page 24: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

GEF4 GEOMETRY

Ref. presentation : EclipseCon France 2017

Provided by geometry plug-in

Define 3 main geometry interfaces for visual elements

ICurve

IShape

IMultishape

Provide geometry relationship utilites

Touches

Intersect

Get intersection points

Contains

24

Page 25: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

FUSELAGE 3D DEFINITION

Ref. presentation : EclipseCon France 2017

Discretized with multiple cross section

A cross section is a fuselage cut at a given position

25

Page 26: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

FUSELAGE 3D DEFINITION

Ref. presentation : EclipseCon France 2017

User has the possibility to create cross section shape

Then other cross section are automatically computed

26

Page 27: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

AIRCRAFT ENVELOPE DEFINITION

Ref. presentation : EclipseCon France 2017

360 segments connect each user defined cross sections

Interpolated with splines

27

Page 28: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

CROSS SECTION COMPUTATION

Ref. presentation : EclipseCon France 2017

Intersections between a plan and all segments

Cross section saved as a Polygon

28

Page 29: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

AIRCRAFT GEOMETRY EXAMPLE

Ref. presentation : EclipseCon France 2017

With 3 cross sections defined by user

Top View

Side View

29

Page 30: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

GEOMETRY ELEMENT COMPUTATION EXAMPLE

Ref. presentation : EclipseCon France 2017

Deck floor geometry top view computation

Intersection between Polygon and Line on every cross section

30

Page 31: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

GEOMETRY ELEMENT COMPUTATION EXAMPLE

Ref. presentation : EclipseCon France 2017

Floor geometry result saved in a Polygon

Floor top view representation

31

Page 32: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

COLLISION CHECK ENGINE

Ref. presentation : EclipseCon France 2017

Check 2D/3D clash

Help user to validate his aircraft and cabin layouts

Heavy usage of touches() and contains() method

32

Page 33: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

Ref. presentation : EclipseCon France 2017 33

CABIN SIMULATOR

Graphical rendering demo

Page 34: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

CABIN SIMULATOR

Ref. presentation : EclipseCon France 2017

Multi agent simulation

Simulate boarding and deplaning

Multiple parameterizations

‐ Passenger physical characteristics

‐ Passenger behaviors

‐ Doors, seats affectation

Based on passenger deck view

Reuse graphical code

Removal of user interaction

Only addition : Passenger and luggage drawings

34

Page 35: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

CABIN SIMULATOR DEMO

Ref. presentation : EclipseCon France 2017 35

Page 36: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

CONCLUSION

Ref. presentation : EclipseCon France 2017 36

Hard Start

Long learning curve

Bindings and injections are complicated to understand

Best way to learn: Analyze logo example and other small examples

Good results

Good feedback from users

Nice graphical rendering

Good performance

Special thanks to Alexander Nyssen and Matthias Wienand for their help!

Page 37: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

QUESTIONS & ANSWERS

Ref. presentation : EclipseCon France 2017 37

Page 38: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

CONTACTS

CIMPA PLM Services

4 Avenue Didier Daurat,

31700 Blagnac

www.cimpa.com

Xavier JACQUES

Solution Architect

T. + 33 (0)5 32 11 04 42

[email protected]

Ref. presentation : EclipseCon France 2017 38

Page 39: A new aircraft fuselage configuration? Easy with GEF4! · 2017-06-23 · Allow unconventionnal aircraft configuration Precise geometry calculation Graphical Editing Framework (GEF4)

Delivering Transformation. Together.

© CIMPA SAS. All rights reserved. Confidential and proprietary document. This document and all information contained herein is the sole property of CIMPA SAS. No intellectual property rights are granted by the delivery of this document or the disclosure of its content. This document shall not be reproduced or disclosed to a third

party without the express written consent of CIMPA SAS. This document and its content shall not be used for any purpose other than that for which it is supplied. The statements made herein do not constitute an offer. They are based on the mentioned assumptions and are expressed in good faith. Where the supporting grounds for

these statements are not shown, CIMPA SAS. will be pleased to explain the basis thereof.

CIMPA S.A.S. SOCIETE PAR ACTIONS SIMPLIFIEE. Equity Capital: 152449 €. 393 341 540 RCS TOULOUSE.

Headquarter address : 4, AVENUE DIDIER DAURAT. CENTREDA 1. 31700 BLAGNAC - FRANCE