Microsoft PowerPoint _watanabe.pptx

Size: px
Start display at page:

Download "Microsoft PowerPoint _watanabe.pptx"

Transcription

1 - 双曲幾何ツールの試作に向けて 年 12 月 20 日 筑波大学システム情報系 渡辺 俊 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 1

2 活動の概要 仮想空間 実空間の一体化 AR 技術を利用した実空間 GIS の開発 3 次元都市モデルの整備 SketchUp の活用 e-learning コンテンツの更新 ArcGIS10 Python への対応 アルゴリズム教材の開発 双曲幾何ツールの試作に向けて 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 2

3 はじめに ( 距離空間 ) 図面 ( 建築空間 ) ユークリッド距離 地図 ( 都市空間 ) 球面距離 ( 大円距離 )... 時間軸変形地図 (1969: 杉浦康平 ) 時間距離 空間的相互作用モデル ( アクティビティのマクロな視点 ) 距離減衰関数 ( 冪乗関数 指数関数 ) 視空間 認知空間のモデル ( アクティビティのミクロな視点 ) 双曲的距離 (?) 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 3

4 重力モデル 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 4

5 ArcGIS による正距方位図 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 5

6 ポアンカレ円板の双曲タイル張り 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 6

7 幾何学とアプリケーション ユークリッド幾何学 初等幾何学 (CAD) 非ユークリッド幾何学 楕円幾何学 (GIS?) 球面幾何学 双曲幾何学 射影幾何学 (CG) 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 7

8 コンパスと定規による描画方法 (Chaim Goodman-Strauss) 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 8

9 双曲タイル貼り ( 双曲幾何学への招待 : 複素数で視る ) 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 9

10 アルゴリズムによる描画方法 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 10

11 双曲タイル貼りのプログラム from math import * from Tkinter import * class Point: def init (self, x1, y1): self.x = float(x1) self.y = float(y1) def repr (self): return "Point(%f, %f) n" % (self.x, self.y) def eq (self, pt): return (self.x == pt.x and self.y == pt.y) def add (self, pt): return Point(self.x + pt.x, self.y + pt.y) def sub (self, pt): return Point(self.x - pt.x, self.y - pt.y) def mul (self, n): return Point(self.x * n, self.y * n) def div (self, n): return Point(self.x / n, self.y / n) def sq_sum(self): return self.x**2 + self.y**2 def pro_sum(self, pt): return self.x * pt.x + self.y * pt.y def ex_pro(self, pt): return self.x * pt.y - self.y * pt.x def normal(self): d = sqrt(self.sq_sum()) return Point(self.x / d, self.y / d) def rotate(self, t): u = self.x * cos(t) - self.y * sin(t) v = self.x * sin(t) + self.y * cos(t) return Point(u,v) class Line: def init (self, start, end): self.p1 = start self.p2 = end def repr (self): return "Line((%f, %f), (%f, %f)) n" % (self.p1.x, self.p1.y, self.p2.x, self.p2.y) class Circle: def init (self, center, radius): self.c = center self.r = float(radius) def repr (self): return "Circle((%f, %f),%f) n" % (self.c.x, self.c.y, self.r) def clip(self, circle): d = sqrt((self.c - circle.c).sq_sum()) phi = acos((d**2 + self.r**2 - circle.r**2)/(2*d*self.r)) theta = atan2(circle.c.y - self.c.y, circle.c.x - self.c.x) return [(theta - phi)*180/pi, (phi*180/pi) * 2] class Arc(Circle): def init (self, center, radius, p1, p2): Circle. init (self, center, radius) self.p1 = p1 self.p2 = p2 def repr (self): ag = self.angle() return "Arc((%f, %f),%f, %f, %f) n" % (self.c.x, self.c.y, self.r, ag[0], ag[1]) def angle(self): theta1 = atan2(self.p1.y - self.c.y, self.p1.x - self.c.x) theta2 = atan2(self.p2.y - self.c.y, self.p2.x - self.c.x) phi = abs(theta2 - theta1) if phi <= pi: return [min(theta1, theta2)*180/pi, phi*180/pi] else: return [max(theta1, theta2)*180/pi, (2*pi - phi)*180/pi] def circleinversion(axis, target): # point on circle if isinstance(axis, Circle) and isinstance(target, Point): v = target - axis.c return axis.c + v/v.sq_sum()*axis.r**2 # point on line if isinstance(axis, Line) and isinstance(target, Point): unitv = (axis.p2 - axis.p1).normal() par = unitv*((target - axis.p1).pro_sum(unitv)) perp = (target - axis.p1) - par return axis.p1 + par - perp # line on circle if isinstance(axis, Circle) and isinstance(target, Line): s = (target.p2 - target.p1).ex_pro(target.p2 ex pro(target p2 - axis.c) if abs(s) > (10**-8): v = target.p1 - target.p2 cx = (2*s*axis.c.x + v.y*axis.r**2)/(2*s) cy = (2*s*axis.c.y - v.x*axis.r**2)/(2*s) r = axis.r**2*sqrt((v.sq_sum())/s**2)/2 p1 = circleinversion(axis, target.p1) p2 = circleinversion(axis, target.p2) return Arc(Point(cx,cy), r, p2, p1) else: p1 = circleinversion(axis, target.p1) p2 = circleinversion(axis, target.p2) return Line(p2, p1) # circle on circle if isinstance(axis, Circle) and isinstance(target, Arc): if axis.c == target.c and axis.r == target.r: return Circle(axis.c, axis.r) elif abs((axis.c - target.c).sq_sum() - target.r**2) > (10**-8): dis = sqrt((target.c - axis.c).sq_sum()) ri = (target.c - axis.c)/dis c1 = axis.r**2/(dis + target.r) c2 = axis.r**2/(dis - target.r) p1 = circleinversion(axis, target.p1) p2 = circleinversion(axis, target.p2) return Arc((axis.c + ri*(c1 + c2)/2),abs(c1 - c2)/2, p2, p1) else: p1 = circleinversion(axis, target.p1) p2 = circleinversion(axis, target.p2) return Line(p2, p1) # circle on line if isinstance(axis, Line) and isinstance(target, Arc): unitv = (axis.p2 - axis.p1).normal() par = unitv*(target.c - axis.p1).pro_sum(unitv) perp = (target.c - axis.p1) - par a1 = circleinversion(axis, target.p1) a2 = circleinversion(axis, target.p2) return Arc(axis.p1 + par - perp, target.r, a2, a1) #line on line if isinstance(axis, Line) and isinstance(target, Line): if axis.p1 == target.p1 and axis.p2 == target.p2: return Line(target.p1, target.p2) else: unitv = (axis.p2 - axis.p1).normal() par = unitv*(target.p1 - axis.p1).pro_sum(unitv) perp = (target.p1 - axis.p1) - par pars = unitv*(target.p2 - target.p1).pro_sum(unitv) pro perps = (target.p2 - target.p1) - pars p1 = axis.p1 + par - perp return Line(p1, p1 + pars - perps) def hyperbolictriangle(p, q, r): if (1.0/p + 1.0/q + 1.0/r) < 1: a=pi/p p b = pi / q c = pi / r rb = tanh(1.0/2*acosh((cos(a)*cos(b)+cos(c))/(sin(a)*sin(b)))) rc = tanh(1.0/2*acosh((cos(a)*cos(c)+cos(b))/(sin(a)*sin(c)))) p2 = Point(sin(a), cos(a))*rc/rb mp = Point(((rB*(1.0 + rc**2)/sin(a)-rc*(1.0 + rb**2)/tan(a))/rc), (1+rB**2))/(2*rB) ro = sqrt((mp - Point(0,rB)).sq_sum())/rB mp = mp/rb p0 = Point(0, 0) p1 = Point(0, 1) return [[p0,p2,p1],[line(p0,p2),arc(mp,ro,p1,p2),line(p0,p1)],[p,q,r]] def hyperbolictransform(triangle): neighbors = [] for i in [[0,2,1],[1,0,2],[2,1,0]]: p0 = triangle[0][i[0]] p1 = circleinversion(triangle[1][i[0]],triangle[0][i[1]]) p2 = triangle[0][i[2]] e0 = circleinversion(triangle[1][i[0]],triangle[1][i[1]]) e1 = circleinversion(triangle[1][i[0]],triangle[1][i[2]]) e2 = triangle[1][i[0]] neighbors.append([[p0,p1,p2],[e0,e1,e2]]) return neighbors def recursion(n): if n == 0: global mplist global layers points = starttriangle[0] mplist = [(points[0] + points[1] + points[2])/3] layers = [[starttriangle]] return layers else: angle = tan(pi/2-2*pi/starttriangle[2][0]) inverse = [] for piece in recursion(n - 1)[-1]: inverse = inverse + hyperbolictransform(piece) select = [] for piece in inverse: points = piece[0] mp = (points[0] + points[1] + points[2])/3 if mp.y / mp.x < angle: continue if include(mp): continue mplist.append(mp) select.append(piece) layers.append(select) return layers def include(np): for p in mplist: if (np - p).sq_sum() < (10**-8): return True return False def show(tesserae, size): c = Canvas(width=size, height=size) c.pack() sc = starttriangle[1][1].c sr = starttriangle[1][1].r lr = sqrt(sc.sq_sum()-sr**2) q_ scale = (size/2-50) / lr unitc = Circle(Point(0,0),lr*scale) x1 = -lr*scale + size/2 y1 = size/2 + lr*scale x2 = lr*scale + size/2 y2 = size/2 - lr*scale c.create_oval(x1, y1, x2, y2) for i in range(starttriangle[2][0]): for layer in tesserae: for j in range(len(layer)): ( for shape in layer[j][1]: if isinstance(shape, Arc): nc = shape.c.rotate(i*2*pi / starttriangle[2][0]) ag = (Circle(nc*scale, shape.r*scale)).clip(unitc) x1 = (nc.x - shape.r)*scale + size/2 y1 = size/2 - (nc.y - shape.r)*scale x2 = (nc.x + shape.r)*scale + size/2 y2 = size/2 - (nc.y + shape.r)*scale c.create_arc(x1, y1, x2, y2, start=ag[0], extent=ag[1], style='arc') n2 = Point(0, lr)rotate((i*2 lr).rotate((i*2-1)*pi/starttriangle[2][0]) x2 = n2.x*scale + size/2 y2 = size/2 - n2.y*scale c.create_line(size/2, size/2, x2, y2, width=1) n2 = Point(0, lr).rotate(i*2*pi/starttriangle[2][0]) x2 = n2.x*scale + size/2 y2 = size/2 - n2.y*scale c.create_line(size/2, size/2, x2, y2) mainloop() def hypergolictessellation(p, q, r, n): global starttriangle starttriangle = hyperbolictriangle(p, q, r) show(recursion(n), 700) 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 11

12 ArcGIS 上での実装 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 12

13 バリエーション 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 13

14 情報化と都市の将来 参考文献 双曲幾何学への招待 複素数で視る谷口雅彦 奥村善英著培風館 (1996/10) 双曲幾何 ( 現代数学への入門 ) 深谷賢治著岩波書店 (2004/9/7) Compass and straightedge in the Poincare disk Chaim Goodman-Strauss, Amer. Math. Monthly 108 (2001), M. C. Escher s Legacy A Centennial Celebration D. Schattschneider and M. Emmer(eds.), Springer(2003) The Mathematica GuideBook for Graphics Michael Trott, Springer (2004) 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 14

Python Speed Learning

Python   Speed Learning Python Speed Learning 1 / 76 Python 2 1 $ python 1 >>> 1 + 2 2 3 2 / 76 print : 1 print : ( ) 3 / 76 print : 1 print 1 2 print hello 3 print 1+2 4 print 7/3 5 print abs(-5*4) 4 / 76 print : 1 print 1 2

More information

レコードとオブジェクト

レコードとオブジェクト レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 => 3

More information

レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb

レコード class Point attr_accessor(x, y) インスタンス変数の宣言 point.rb レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load ("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 =>

More information

レコードとオブジェクト

レコードとオブジェクト レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 => 3

More information

cards.gif from Tkinter import * root = Tk() c0 = Canvas(root, width = 400, height = 300) c0.pack() image_data = PhotoImage(file = c1.gif ) c0.create_i

cards.gif from Tkinter import * root = Tk() c0 = Canvas(root, width = 400, height = 300) c0.pack() image_data = PhotoImage(file = c1.gif ) c0.create_i (Python ) Python Python 2 1. 2 2. 52 3. A, K, Q, J, 10, 9, 8, 7, 6, 5, 4, 3, 2 4. 13 5. 6. 7. 8. 9. 13 10. 11. 12. Python http://www.jftz.com/cards/ 1 cards.gif from Tkinter import * root = Tk() c0 = Canvas(root,

More information

レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb

レコード class Point attr_accessor(x, y) インスタンス変数の宣言 point.rb レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load ("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 =>

More information

from Tkinter import * root = Tk() c0 = Canvas(root, width = 400, height = 300) c0.pack() image_data = PhotoImage(file = c1.gif ) c0.create_image(200,

from Tkinter import * root = Tk() c0 = Canvas(root, width = 400, height = 300) c0.pack() image_data = PhotoImage(file = c1.gif ) c0.create_image(200, (Python ) Python Python 2 1. 2 2. 52 3. A, K, Q, J, 10, 9, 8, 7, 6, 5, 4, 3, 2 4. 13 5. 6. 7. 8. 9. 13 10. 11. 12. Python.gif 1 from Tkinter import * root = Tk() c0 = Canvas(root, width = 400, height =

More information

13 9 11 7 3 20

13 9 11 7 3 20 - 1 - 13 9 11 7 3 20 Point Point Point 1 2-1 - - 2 - - 3 - 1-4 - 2 3-5 - 1 2 3-6 - 1 2-7 - 3 4 5 6-8 - 1 2-9 - 1 2-10 - - 11 - - 12 - - 13 - 1 2-14 - 3 4 5 6 7-15 - 8-16 - - 17 - 1-18 - 2 1 2 3-19

More information

Python @HACHINONE 10 1 V Python 2014 2 : L[i] # -*- coding: utf-8 -*- def search(l, e): """L をリスト e をオブジェクトとする L に e が含まれていれば True そうでなければ False を返す """ for i in range(len(l)): if L[i] == e: return True

More information

Microsoft PowerPoint - 渡辺.pptx

Microsoft PowerPoint - 渡辺.pptx 2010 年 11 月 29 日 筑波大学大学院システム情報工学研究科 准教授渡辺俊 景観シミュレーションション - 開発側のツール?- 1985 年頃 ~ フォトリアリスティックな映像の探究 印刷物 / 室内でのオンスクリーン プレゼンテーションによる提示 平面画像による空間認識と実空間での空間認識の違い 地理情報科学と都市工学を融合した空間解析手法の新展開 Page 1 地理情報科学と都市工学を融合した空間解析手法の新展開

More information

r3.dvi

r3.dvi 00 3 2000.6.10 0 Java ( 7 1 7 1 GSSM 1? 1 1.1 4 4a 4b / / 0 255 HTML X 0 255 16 (0,32,255 #0020FF Java xclock -bg #0020FF xclock ^C (Control C xclock 4c 1 import java.applet.applet; import java.awt.*;

More information

RHEA key

RHEA key 2 P (k, )= k e k! 3 4 Probability 0.4 0.35 0.3 0.25 Poisson ( λ = 1) Poisson (λ = 3) Poisson ( λ = 10) Poisson (λ = 20) Poisson ( λ = 30) Gaussian (µ = 1, s = 1) Gaussian ( µ = 3, s = 3) Gaussian (µ =

More information

Python Speed Learning

Python   Speed Learning Python Speed Learning 1 / 89 1 2 3 4 (import) 5 6 7 (for) (if) 8 9 10 ( ) 11 12 for 13 2 / 89 Contents 1 2 3 4 (import) 5 6 7 (for) (if) 8 9 10 ( ) 11 12 for 13 3 / 89 (def) (for) (if) etc. 1 4 / 89 Jupyter

More information

2

2 2 3 Page 4 5 6 A-1B-1 C0 D0 E0 F0 G0 A0 B0 C1 D1 E1 F1 G1 A1 B1 C2 D2 E2 F2 G2 A2 B2 C3 D3 E3 7 F3 G3 A3 B3 C4 D4 E4 F4 G4 A4 B4 C5 D5 E5 F5 G5 A5 B5 C6 D6 E6 F6 G6 A6 B6 C7 8 Page 9 1 2 3 1 2 10 1 11

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスがインスタンス化されてからメソッドに成る ) # 関数 def test_func(): print('call test_func') #

More information

RL_tutorial

RL_tutorial )! " = $ % & ' "(& &*+ = ' " + %' "(- + %. ' "(. + γ γ=0! " = $ " γ=0.9! " = $ " + 0.9$ " + 0.81$ "+, + ! " #, % #! " #, % # + (( + #,- +. max 2 3! " #,-, % 4! " #, % # ) α ! " #, % ' ( )(#, %)!

More information

2015 I ( TA)

2015 I ( TA) 2015 I ( TA) Schrödinger PDE Python u(t, x) x t 2 u(x, t) = k u(t, x) t x2 k k = i h 2m Schrödinger h m 1 ψ(x, t) i h ( 1 ψ(x, t) = i h ) 2 ψ(x, t) t 2m x Cauchy x : x Fourier x x Fourier 2 u(x, t) = k

More information

(pack ) Toplevel

(pack ) Toplevel 1 1 2 2 3 (pack ) 6 3.1................................... 6 3.2 1............................ 8 3.3 Toplevel........................................ 9 3.4............................... 10 3.5 Toplevel..................................

More information

from tkinter import * root = Tk() # variable teban = IntVar() teban.set(1) # def start(): canvas.create_rectangle(0, 0, 560, 560, fill= white ) for k

from tkinter import * root = Tk() # variable teban = IntVar() teban.set(1) # def start(): canvas.create_rectangle(0, 0, 560, 560, fill= white ) for k Zen Deep Zen Go from tkinter import * root = Tk() canvas = Canvas(root, width = 360, height=360) canvas.pack() root.mainloop() 1 from tkinter import * root = Tk() # variable teban = IntVar() teban.set(1)

More information

PowerPoint Presentation

PowerPoint Presentation 知能システム論 1 (9) 2015.6.17 情報システム学研究科情報メディアシステム学専攻知能システム学講座末廣尚士 13. アームモデルの Python による表現 理想ロボット :ArmWithHand 構造は関係なし move: 手先や持った物を動かす ハンド :Hand open, close, width アームのリンクの計算 :Link set_jparam シリアルリンクアーム :LinkedArm

More information

Windows (L): D:\jyugyou\ D:\jyugyou\ D:\jyugyou\ (N): en2 OK 2

Windows (L): D:\jyugyou\ D:\jyugyou\ D:\jyugyou\ (N): en2 OK 2 Windows C++ Microsoft Visual Studio 2010 C++ Microsoft C++ Microsoft Visual Studio 2010 Microsoft Visual Studio 2010 C++ C C++ Microsoft Visual Studio 2010 Professional Professional 1 Professional Professional

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 ゲームプログラミング スプライトの衝突判定 スプライトの衝突判定 スプライトの衝突判定の例として インベーダーゲームのコードを 下記に示す PYTHON3 #coding: utf-8 import pygame from pygame.lo

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 ゲームプログラミング スプライトの衝突判定 スプライトの衝突判定 スプライトの衝突判定の例として インベーダーゲームのコードを 下記に示す PYTHON3 #coding: utf-8 import pygame from pygame.lo PYTHON 入門 ゲームプログラミング スプライトの衝突判定 スプライトの衝突判定 スプライトの衝突判定の例として インベーダーゲームのコードを 下記に示す #coding: utf-8 import pygame from pygame.locals import * import os import sys SCR_RECT = Rect(0, 0, 640, 480) def main():

More information

永和システムマネジメント SP 安井力 東京支社 Python 勉強会実習資料 2005/12/28 この資料の使い方最初から順に試してください 初心者は 書かれたとおり入力して ほかにも似た例を試してみてください 初級者は 書かれたとおり入力して なぜそれで動くのか調べてください 中級者は 設問か

永和システムマネジメント SP 安井力 東京支社 Python 勉強会実習資料 2005/12/28 この資料の使い方最初から順に試してください 初心者は 書かれたとおり入力して ほかにも似た例を試してみてください 初級者は 書かれたとおり入力して なぜそれで動くのか調べてください 中級者は 設問か この資料の使い方最初から順に試してください 初心者は 書かれたとおり入力して ほかにも似た例を試してみてください 初級者は 書かれたとおり入力して なぜそれで動くのか調べてください 中級者は 設問から解答を考えてください 根性 問題も挑戦してください 上級者は 根性 問題も含めて この資料の改善をしてください 根性 問題は やる気と ( 多少の ) 知識がある人に挑戦して欲しいものです 1. 起動と実行

More information

オブジェクト指向

オブジェクト指向 オブジェクト指向 オブジェクトとは コンピュータで扱う複雑な対象のモデル化の一つ オブジェクトの内部データは変数 ( インスタンス変数 ) の集合で表現されている オブジェクトの内部データに関する処理の方法 ( ) をオブジェクト自身が 知っている オブジェクトの内部は外からは見えない ( 隠蔽, またはカプセル化 ) 処理の名前が同じでも, オブジェクトごとに処理の中身が異なり得る ( 多相性,

More information

GraphicsWithPlotFull.nb Plot[{( 1), ( ),...}, {( ), ( ), ( )}] Plot Plot Cos x Sin x, x, 5 Π, 5 Π, AxesLabel x, y x 1 Plot AxesLabel

GraphicsWithPlotFull.nb Plot[{( 1), ( ),...}, {( ), ( ), ( )}] Plot Plot Cos x Sin x, x, 5 Π, 5 Π, AxesLabel x, y x 1 Plot AxesLabel http://yktlab.cis.k.hosei.ac.jp/wiki/ 1(Plot) f x x x 1 1 x x ( )[( 1)_, ( )_, ( 3)_,...]=( ) Plot Plot f x, x, 5, 3 15 10 5 Plot[( ), {( ), ( ), ( )}] D g x x 3 x 3 Plot f x, g x, x, 10, 8 00 100 10 5

More information

2 PostScript PostScript (token) 437 == 437 == PostScript PostScript 437 == PostScript (operator) 437 == == ==

2 PostScript PostScript (token) 437 == 437 == PostScript PostScript 437 == PostScript (operator) 437 == == == PostScript version 1.03 2003 1 24 Copyright c 2000 2003 Daikoku Manabu 1 PostScript 1.1 PostScript PostScript PostScript (page description language) PostScript Adobe Systems Incorporated PostScript PostScript

More information

listings-ext

listings-ext (6) Python (2) ( ) ohsaki@kwansei.ac.jp 5 Python (2) 1 5.1 (statement)........................... 1 5.2 (scope)......................... 11 5.3 (subroutine).................... 14 5 Python (2) Python 5.1

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 0 1 2 3 4 5 6 1964 1978 7 0.0015+0.013 8 1 π 2 2 2 1 2 2 ( r 1 + r3 ) + π ( r2 + r3 ) 2 = +1,2100 9 10 11 1.9m 3 0.64m 3 12 13 14 15 16 17 () 0.095% 0.019% 1.29% (0.348%) 0.024% 0.0048% 0.32% (0.0864%)

More information

Collatzの問題 (数学/数理科学セレクト1)

Collatzの問題 (数学/数理科学セレクト1) / AICHI UNIVERSITY OF EDUCATION A { z = x + iy 0.100

More information

ビットリアカップ2007けいはんなサイクルレースリザルト

ビットリアカップ2007けいはんなサイクルレースリザルト Page 4/30 Page 5/30 Page 6/30 Page 7/30 Page 8/30 Page 9/30 Page 10/30 Page 11/30 Page 12/30 Page 13/30 Page 14/30 Page 15/30 Page 16/30 Page 17/30 Page 18/30 Page 19/30 Page 20/30 Page 21/30 Page 22/30

More information

Page 1

Page 1 Page 1 Page 2 Page 3 Page 4 620 628 579-41 -6.7-49 -7.9 71 41 47-24 -33.3 6 15.9 11.5 6.5 8.1 36 15 22-14 -38.9 7 43.4 Page 5 277 302 23 24 12/3Q 12/4Q 13/1Q 13/2Q 13/3Q 13/4Q 14/1Q 14/2Q 14/3Q 14/4Q 15/1Q

More information

離散数理工学 第 2回 数え上げの基礎:漸化式の立て方

離散数理工学 第 2回  数え上げの基礎:漸化式の立て方 2 okamotoy@uec.ac.jp 2015 10 20 2015 10 18 15:29 ( ) (2) 2015 10 20 1 / 45 ( ) 1 (10/6) ( ) (10/13) 2 (10/20) 3 ( ) (10/27) (11/3) 4 ( ) (11/10) 5 (11/17) 6 (11/24) 7 (12/1) 8 (12/8) ( ) (2) 2015 10 20

More information

橡点検記録(集約).PDF

橡点検記録(集約).PDF 942.8.8.8.7 671 86 11 1 9 9 9 1 1,792 7,23 2,483 1,324 2,198 7,23 82 7,23 6,327 9,22 9,713 8,525 8,554 9,22. 8,554. 1,79 9,713 95 947 8,525.. 944 671 81 7 17 1,29 1,225 1,241 1,25 1,375 9.3 23,264 25,

More information

株主通信:第18期 中間

株主通信:第18期 中間 19 01 02 03 04 290,826 342,459 1,250,678 276,387 601,695 2,128,760 31,096 114,946 193,064 45,455 18,478 10,590 199,810 22,785 2,494 3,400,763 284,979 319,372 1,197,774 422,502 513,081 2,133,357 25,023

More information

1003shinseihin.pdf

1003shinseihin.pdf 1 1 1 2 2 3 4 4 P.14 2 P.5 3 P.620 6 7 8 9 10 11 13 14 18 20 00 P.21 1 1 2 3 4 5 2 6 P7 P14 P13 P11 P14 P13 P11 3 P13 7 8 9 10 Point! Point! 11 12 13 14 Point! Point! 15 16 17 18 19 Point! Point! 20 21

More information

株主通信 第16 期 報告書

株主通信 第16 期 報告書 10 15 01 02 1 2 3 03 04 4 05 06 5 153,476 232,822 6,962 19,799 133,362 276,221 344,360 440,112 412,477 846,445 164,935 422,265 1,433,645 26,694 336,206 935,497 352,675 451,321 1,739,493 30,593 48,894 153,612

More information

p01.qxd

p01.qxd 2 s 1 1 2 6 2 POINT 23 23 32 15 3 4 s 1 3 2 4 6 2 7003800 1600 1200 45 5 3 11 POINT 2 7003800 7 11 7003800 8 12 9 10 POINT 2003 5 s 45700 3800 5 6 s3 1 POINT POINT 45 2700 3800 7 s 5 8 s3 1 POINT POINT

More information

ワタベウェディング株式会社

ワタベウェディング株式会社 1 2 3 4 140,000 100,000 60,000 20,000 0 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 5 6 71 2 13 14 7 8 9 10 11 12 1 2 2 point 1 point 2 1 1 3 point 3 4 4 5 6 point 4 point 5 point 6 13 14 15 16 point 17

More information

untitled

untitled 1 2 3 4 5 6 7 Point 60,000 50,000 40,000 30,000 20,000 10,000 0 29,979 41,972 31,726 45,468 35,837 37,251 24,000 20,000 16,000 12,000 8,000 4,000 0 16,795 22,071 20,378 14 13 12 11 10 0 12.19 12.43 12.40

More information

ヤフー株式会社 株主通信VOL.16

ヤフー株式会社 株主通信VOL.16 01 260,602264,402 122,795125,595 64,84366,493 107110 120,260123,060 0 500 300 400 200 100 700 600 800 39.8% 23.7% 36.6% 26.6% 21.1% 52.4% 545 700 0 50 200 150 100 250 300 350 312 276 151 171 02 03 04 POINT

More information

-- 0 500 1000 1500 2000 2500 3000 () 0% 20% 40% 60%23 47.5% 16.0% 26.8% 27.6% 10,000 -- 350 322 300 286 250 200 150 100 50 0 20 21 22 23 24 25 26 27 28 29 -- ) 300 280 260 240 163,558 165,000 160,000

More information

¥×¥í¥°¥é¥ß¥ó¥°±é½¬I Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~ alse

¥×¥í¥°¥é¥ß¥ó¥°±é½¬I  Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~alse I Exercise on Programming I http://bit.ly/oitprog1 1, 2 of 14 ( RD S ) I 1, 2 of 14 1 / 44 Ruby Ruby ( RD S ) I 1, 2 of 14 2 / 44 7 5 9 2 9 3 3 2 6 5 1 3 2 5 6 4 7 8 4 5 2 7 9 6 4 7 1 3 ( RD S ) I 1, 2

More information

コンピュータ概論

コンピュータ概論 5.1 VBA VBA Check Point 1. 2. 5.1.1 ( bug : ) (debug) On Error On Error On Error GoTo line < line > 5.1.1 < line > Cells(i, j) i, j 5.1.1 MsgBox Err.Description Err1: GoTo 0 74 Visual Basic VBA VBA Project

More information

4 次元多面体から空間のかたちをみるー空間が曲がっているとはどういうことか 河野俊丈 2016 年 7 月 7 日学術俯瞰講義 図形から拡がる数理科学

4 次元多面体から空間のかたちをみるー空間が曲がっているとはどういうことか 河野俊丈 2016 年 7 月 7 日学術俯瞰講義 図形から拡がる数理科学 クレジット : UTokyo Online Education 学術俯瞰講義 2016 河野俊丈 ライセンス : 利用者は 本講義資料を 教育的な目的に限ってページ単位で利用することができます 特に記載のない限り 本講義資料はページ単位でクリエイティブ コモンズ表示 - 非営利 - 改変禁止ライセンスの下に提供されています http://creativecommons.org/licenses/by-nc-nd/4.0/

More information

( ) ( ) lex LL(1) LL(1)

( ) ( ) lex LL(1) LL(1) () () lex LL(1) LL(1) http://www.cs.info.mie-u.ac.jp/~toshi/lectures/compiler/ 29 5 14 1 1 () / (front end) (back end) (phase) (pass) 1 2 1 () () var left, right; fun int main() { left = 0; right = 10;

More information

離散数理工学 第 2回 数え上げの基礎:漸化式の立て方

離散数理工学 第 2回  数え上げの基礎:漸化式の立て方 2 okamotoy@uec.ac.jp 2014 10 21 2014 10 29 10:48 ( ) (2) 2014 10 21 1 / 44 ( ) 1 (10/7) ( ) (10/14) 2 (10/21) 3 ( ) (10/28) 4 ( ) (11/4) 5 (11/11) 6 (11/18) 7 (11/25) ( ) (2) 2014 10 21 2 / 44 ( ) 8 (12/2)

More information

() () () 200,000 160,000 120,000 80,000 40,000 3.3 144,688 43,867 3.1 162,624 52,254 170,934 171,246 172,183 3 2.8 2.6 57,805 61,108 65,035 3.5 3 2.5 2 1.5 1 0.5 0 0 2 7 12 17 22 10.1 12.7 17 22.3 73.4

More information

Java演習(4) -- 変数と型 --

Java演習(4)   -- 変数と型 -- 50 20 20 5 (20, 20) O 50 100 150 200 250 300 350 x (reserved 50 100 y 50 20 20 5 (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics; (reserved public class Blocks1 extends

More information

listings-ext

listings-ext (10) (2) ( ) ohsaki@kwansei.ac.jp 8 (2) 1 8.1.............................. 1 8.2 mobility.fixed.......................... 2 8.3 mobility.randomwalk...................... 7 8.4 mobility.randomwaypoint...................

More information

グラフの探索 JAVA での実装

グラフの探索 JAVA での実装 グラフの探索 JAVA での実装 二つの探索手法 深さ優先探索 :DFS (Depth-First Search) 幅優先探索 :BFS (Breadth-First Search) 共通部分 元のグラフを指定して 極大木を得る 探索アルゴリズムの利用の観点から 利用する側からみると 取り替えられる部品 どちらの方法が良いかはグラフに依存 操作性が同じでなければ 共通のクラスの派生で作ると便利 共通化を考える

More information

or a 3-1a (0 b ) : max: a b a > b result a result b ( ) result Python : def max(a, b): if a > b: result = a else: result = b ret

or a 3-1a (0 b ) : max: a b a > b result a result b ( ) result Python : def max(a, b): if a > b: result = a else: result = b ret 4 2018.10.18 or 1 1.1 3-1a 3-1a (0 b ) : max: a b a > b result a result b result Python : def max(a, b): if a > b: result = a result = b return(result) : max2: a b result a b > result result b result 1

More information

< F2D F B834E2E6A7464>

< F2D F B834E2E6A7464> ランダムウォーク [Java アプレット ] [Java アプレリケーョン ] 1. はじめに 酔っぱらいは前後左右見境なくふらつきます 酔っぱらいは目的地にたどり着こうと歩き回っているうちに何度も同じところに戻って来てしまったりするものです 今 酔っぱらいが数直線上の原点にいるとします 原点を出発して30 回ふらつくとき 30 回目に酔っぱらいがいる位置は 出発点である原点からどれくらい離れてしまっているのでしょうか

More information

19 ステップで 2 大人気スクリプト言語を学ぶ GUI のあるアプリを作る STEP11 から STEP12 までまとめ 1.Python での GUI アプリ作成 Python は標準ではグラフィックスの機能を持ちませんが ライブラリを使うことで GUI のアプリを作成することができる そこで

19 ステップで 2 大人気スクリプト言語を学ぶ GUI のあるアプリを作る STEP11 から STEP12 までまとめ 1.Python での GUI アプリ作成 Python は標準ではグラフィックスの機能を持ちませんが ライブラリを使うことで GUI のアプリを作成することができる そこで 19 ステップで 2 大人気スクリプト言語を学ぶ GUI のあるアプリを作る STEP11 から STEP12 までまとめ 1.Python での GUI アプリ作成 Python は標準ではグラフィックスの機能を持ちませんが ライブラリを使うことで GUI のアプリを作成することができる そこで Kivy というソフトウェアを使う Kivy は Python のパッケージ管理システム pip を使ってインターネット上のファイルサーバからインストールが可能である

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 ゲームプログラミング スプライト スプライト Pygame では pygame.sprite を用いる事でスプライトの管理 描画 衝突判定等を簡単に行う事が出来る 此れを利用してキャラクター操作に関する各種機能をスプライトクラスとして 1 個

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 ゲームプログラミング スプライト スプライト Pygame では pygame.sprite を用いる事でスプライトの管理 描画 衝突判定等を簡単に行う事が出来る 此れを利用してキャラクター操作に関する各種機能をスプライトクラスとして 1 個 PYTHON 入門 ゲームプログラミング スプライト スプライト Pygame では pygame.sprite を用いる事でスプライトの管理 描画 衝突判定等を簡単に行う事が出来る 此れを利用してキャラクター操作に関する各種機能をスプライトクラスとして 1 個に纏め 複数のキャラクターを扱い易くしたコードを 下記に示す pygame.sprite.sprite. init (self) self.img

More information

( )$("canvas").drawarc({strokestyle:"red", x:100, y:100, radius:20, start:0, end:360); drawline(x1:, y1:,... xn:, yn:) drawline n 2 n 3 x1: y1: xn: yn

( )$(canvas).drawarc({strokestyle:red, x:100, y:100, radius:20, start:0, end:360); drawline(x1:, y1:,... xn:, yn:) drawline n 2 n 3 x1: y1: xn: yn 0.1. jquaery jcanvas jquery John Resig OSS JavaScript Web JavaScript jquery jquery 1 0.2. jcanvas jcanvas 0.3. jcanvas HTML5 Canvas Canvas jcanvas jcanvas jquery Canvas API jcanvas Grouping Layer jcanvas

More information