달력

11

« 2019/11 »

  •  
  •  
  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
2019.09.01 22:59

[WPF] 샘플 2019.09.01 22:59

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

2019.07.05 00:56

[emacs]org-mode를 사용한 초기화 2019.07.05 00:56

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

이 글은 아래의 내용을 담고 있다.

  • Node.js 인스톨과 Electron 시작(본 글에 해당)
  • Electron으로 ffi를 인스톨
  • ffi로 C++ dll을 기동하여, dll 내부 함수를 사용
  • 작성한 Electron어플리케이션을asar으로 하나의 파일로 정리하여 패키징한다.

내 개발 환경 상 Windows10으로 이야기를 진행한다.



Node.js인스톨과 Electron 시작

Electron공식홈페이지에 의하면 현재 안정판은(2019.01.19 기준)

$ npm i -D electron@latest # Electron     4.0.1 # Node         10.11.0 # Chromium     69.0.3497.106

이기 때문에, 우선 똑같은 Node.js 버전을 구한다.

Node.js 설치와 설정

Node.js릴리스 페이지에서 해당하는 버전을 찾는다.

확장자는 .ms 이다. 64비트를 다운로드, 설치한다. 

설치 후 터미널에서 

$ node -v

를 입력하여, 정상적으로 버전이 표시되었다고 설치가 완료된 것은 아니다.

Node를 윈도우에 설치할 때, 환경변수 설정이 잘못 등록되는 버그가 있기 때문이다.

시스템 환경변수의 Path에는 다음과 같이 등록될 수 있다.

C:\Program Files\nodejs\

아래와 같이 수정한다.

C:\Program Files\nodejs


Electron 설치

프로젝트를 작성하고, 프로젝트를 포기화한다.

your-project> npm ini

이것저것 입력하라고 나오지만, 전부 엔터를 눌러도 문제없다. 필요하다면 완료 후에 package.json 를 편집해도 좋다.
그리고 Electron를 설치한다.

your-project> npm install electron --save-dev

그리고 나서, package.json를 아래와 같이 편집한다.

package.json

{ "name": "your-project", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "electron ." }, "author": "", "license": "ISC", "dependencies": {}, "devDependencies": { "electron": "설치 버젼" } }

index.js와 index.html로 기술한다.

index.js

const electron = require('electron'); const {app, BrowserWindow} = electron; const path = require('path'); const url = require('url'); const fs = require('fs'); let mainWindow; //어플리케이션 기동이 종료 후 동작한다. app.on('ready', () => { createWindow(); }); function createWindow() { mainWindow = new BrowserWindow({ width: 400, height: 300, useContentSize: true, title: "test", }); mainWindow.loadURL(url.format({ pathname: path.join(__dirname, 'index.html'), protocol: 'file:', slashes: true })); //윈도우 전부를 닫고, null로 지정한다. mainWindow.on('closed', () => { mainWindow = null }); }

index.html
<!Doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Hello world</title>
</head>
<body>
Hello world!
</body>
</html>

커맨드를 실행하고, 문제없이 동작하는지 확인한다.

your-project> npm start


'프로그래밍 > Electron' 카테고리의 다른 글

Node.js, Electron 설치 및 동작 확인  (0) 2019.01.19
Posted by 공장장 코딩스미스

댓글을 달아 주세요

2018.06.30 00:43

괜찮은 Openfoam 사이트 링크 openFoam2018.06.30 00:43



https://www.xsim.info/articles/OpenFOAM/tutorials/heatTransfer-chtMultiRegionSimpleFoam-multiRegionHeaterRadiation.html





http://www.geocities.jp/penguinitis2002/study/OpenFOAM/index.html



openfoam + code_aster coupling

https://www.precice.org/

https://www.code-aster.org/forum2/viewtopic.php?id=20858

'openFoam' 카테고리의 다른 글

괜찮은 Openfoam 사이트 링크  (0) 2018.06.30
Posted by 공장장 코딩스미스

댓글을 달아 주세요

2018.06.17 23:38

iso 파일을 DVD나 USB에 저장하는 방법 Ubuntu2018.06.17 23:38

[1] DVD 굽기


Brasero 설치

$sudo apt-get update

$sudo apt-get install Brasero


Brasero 실행

이미지 생성 선택

iso 파일 선택

공디스크 넣고, 굽기 실행




[2] USB 저장

usb 이미지 라이터 실행


Posted by 공장장 코딩스미스

댓글을 달아 주세요

2018.06.17 23:26

커스텀 리눅스 OS iso 파일 만들기 Ubuntu2018.06.17 23:26

나를 포함한 많은 유저들은 Xubuntu 18.04 LTS에 다양한 프로그램을 설치해서 사용하고 있다.

특히, 오픈소스 빌드를 수없이 해오면서 시행착오를 거치면서 OS에 쓰레기 코드들이 넘치는 경험을 하곤한다.

깨끗한 상태로 복원시켜 다시 빌드하는 방법이 최선이기 때문에, 설치하다가 뻑이 나면 OS를 포맷하곤 한다.

프로그램 설치에는 정말 많은 시간, 노동력이 들어간다. 때문에 프로그램이 설치된 OS를 통채로 이미지(iso 파일)로 만들어 놓으면, 나중에 편해진다.


Pinguy Builder를 사용한 백업 OS 이미지 만드는 방법을 소개한다.


여기에서 pinguybuilder_5.1-3_all.deb를 다운받는다.


먼저 gdebi를 설치한다.


$ sudo apt-get update

$ sudo apt-get install gdebi

$ gdebi pinguybuilder_5.1-3_all.deb

(설치 완료)


어플리케이션에서 gdebi를 실행한다.


그리고, 

backup과 Dist 가 있는데, backup은 홈 디렉토리를 저장하는 설정이므로 iso 파일 용량이 커진다.

난 애당초 salome-meca 같은 프로그램은 /opt/에 설치하였기 때문에 Dist로 선택하여 이미지 생성한다.


xubuntu 18.04 LTS + (gcc, g++, python) + salome_meca 2017


로 2.7GB짜리 iso가 2시간 정도 걸려 만들 수 있다.


이렇게 만든 iso를 DVD에 굽거나, USB에 저장하는 방법은 다음에 소개하겠다.

Posted by 공장장 코딩스미스

댓글을 달아 주세요

2018.06.10 22:13

초탄성체 변형 salome-meca/튜토리얼2018.06.10 22:13







'salome-meca > 튜토리얼' 카테고리의 다른 글

초탄성체 변형  (0) 2018.06.10
회전체와 고무판의 접촉  (0) 2018.06.10
07-00 소성 (Bar)  (0) 2018.06.04
06-11 접촉(마찰 O, 페널티법)  (0) 2018.06.03
06-11 접촉(마찰 O, 변위구속, 페널티법)  (0) 2018.06.03
06-01 접촉 (하중구속 + 마찰)  (0) 2018.06.03
Posted by 공장장 코딩스미스

댓글을 달아 주세요

rigid03.mmed


Default 최대 해석 시간이 15분으로 설정되어 있는 상태에서 해석 시, CPU Time이 부족하다는 에러가 나올 수 있다.

이 시간을 충분히 늘려서 해석해야 했다.


해석에 걸린 총 시간은 다음과 같다.

9889.83 초(sec)
---------------------------------------------------------------------------------
cpu system cpu+sys elapsed
---------------------------------------------------------------------------------
Preparation of environment 0.00 0.00 0.00 0.00
Copying datas 0.04 0.03 0.07 0.12
Code_Aster run 8681.77 374.48 9056.25 9875.11
Copying results 13.46 0.63 14.09 14.11
---------------------------------------------------------------------------------
Total 8695.46 375.22 9070.68 9889.83
---------------------------------------------------------------------------------






'salome-meca > 튜토리얼' 카테고리의 다른 글

초탄성체 변형  (0) 2018.06.10
회전체와 고무판의 접촉  (0) 2018.06.10
07-00 소성 (Bar)  (0) 2018.06.04
06-11 접촉(마찰 O, 페널티법)  (0) 2018.06.03
06-11 접촉(마찰 O, 변위구속, 페널티법)  (0) 2018.06.03
06-01 접촉 (하중구속 + 마찰)  (0) 2018.06.03
Posted by 공장장 코딩스미스

댓글을 달아 주세요

2018.06.09 12:42

OpenCAE 링크2018.06.09 12:42

http://ofbkansai.sakura.ne.jp/



'링크' 카테고리의 다른 글

OpenCAE  (0) 2018.06.09
CAE Lifehacker  (0) 2018.05.30
Posted by 공장장 코딩스미스

댓글을 달아 주세요