-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.html
165 lines (134 loc) · 6.38 KB
/
index.html
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
<!DOCTYPE html>
<html>
<head>
<title>Bernardo Campos Diocaretz</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/png" href="favicon.gif">
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Ubuntu">
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" rel="stylesheet">
<style>
body,
h1 {
font-family: "Ubuntu", sans-serif
}
body,
html {
height: 100%
}
.bgimg {
min-height: 100%;
background-position: center;
background-size: cover;
}
</style>
</head>
<body>
<div class="bgimg w3-display-container w3-text-white" id="bg">
<div class="w3-display-topleft w3-container w3-xlarge">
<p><button onclick="document.getElementById('about').style.display='block'"
class="w3-button w3-black">about</button></p>
<p><a href="http://iot.beno.cl" target="_blank" class="w3-button w3-black">IoT</a></p>
</div>
<div class="w3-display-bottomright w3-container">
<p>
<a href="https://twitter.com/beno_cd" target="_blank" class="w3-button w3-black w3-xlarge"><i
class="fa-brands fa-x-twitter"></i></a>
<a href="https://github.com/benocd" target="_blank" class="w3-button w3-black w3-xlarge"><i
class="fa-brands fa-github"></i></a>
<a href="https://www.linkedin.com/in/bernardo-campos-diocaretz-7662b378/" target="_blank"
class="w3-button w3-black w3-xlarge"><i class="fa-brands fa-linkedin"></i></a>
</p>
</div>
</div>
<!-- Contact Modal -->
<div id="about" class="w3-modal">
<div class="w3-modal-content w3-animate-top">
<div class="w3-container w3-black">
<span onclick="document.getElementById('about').style.display='none'"
class="w3-button w3-display-topright w3-large">x</span>
<h1>about</h1>
</div>
<div class="w3-container">
<p><b>Bernardo Campos Diocaretz</b> is a Chilean-Australian Software Engineer with extensive experience in
Science and Technology. He specialises in developing IoT solutions, encompassing electronic circuit
prototyping, microcontroller programming, back-end development, data analysis, and server and network administration.
</p>
<p>In addition to his IT skills, Bernardo designs and builds electronic equipment for scientific purposes. Some of
his projects have secured <a
href="https://patents.google.com/?q=(Bernardo+CAMPOS+DIOCARETZ)&oq=Bernardo+CAMPOS+DIOCARETZ" target="_blank">patents</a>
and been featured in <a href="https://orcid.org/0000-0001-8800-8864" target="_blank">scientific literature</a>.
Driven by a profound passion, Bernardo's primary focus is on utilising technology to improve the life of all living
things.</p>
<p>Bernardo has laboratory experience working with autotrophs, focusing on growth optimisation. He has also worked on
various projects, including lab and greenhouse automation, machine learning, and carbon capture. Currently, he is a Research
Assistant at UTS and has a history of working as a software developer across web, desktop, and mobile platforms for
various industries. Some of his key projects include <a
href="https://land-der-ideen.de/en/competitions/beyond-bauhaus/award-winners/aya" target="_blank">AYA</a> and <a
href="https://www.uts.edu.au/research-and-teaching/partner-us/green-genie-carbon-capture-magic-algae/meet-green-genie-team"
target="_blank">Green Genie</a>.</p>
<p>His areas of interest include agricultural technology, regional start-ups, automation,
photobioreactors, environmental sensors, bioinformatics, and smart cities.</p>
<p>Get in touch:
<a href="https://twitter.com/beno_cd" target="_blank"><i
class="fa-brands fa-x-twitter"></i></a>
<a href="https://github.com/benocd" target="_blank"><i
class="fa-brands fa-github"></i></a>
<a href="https://www.linkedin.com/in/bernardo-campos-diocaretz-7662b378/" target="_blank"><i class="fa-brands fa-linkedin"></i></a>
</p>
</div>
</div>
</div>
<script type="module">
import * as THREE from 'https://cdnjs.cloudflare.com/ajax/libs/three.js/110/three.module.js';
let camera, scene, renderer;
let time = 0;
let mouseX = 0, mouseY = 0;
init();
animate();
function init() {
scene = new THREE.Scene();
camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
camera.position.z = 5;
const geometry = new THREE.TorusKnotGeometry(1, 0.3, 100, 16);
const material = new THREE.MeshBasicMaterial({ color: 0xffffff, wireframe: true });
const fractalMesh = new THREE.Mesh(geometry, material);
scene.add(fractalMesh);
renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
var bgDiv = document.getElementById('bg');
bgDiv.appendChild(renderer.domElement);
document.addEventListener('mousemove', onMouseMove, false);
}
function onMouseMove(event) {
mouseX = (event.clientX / window.innerWidth) * 2 - 1;
mouseY = - (event.clientY / window.innerHeight) * 2 + 1;
}
function animate() {
requestAnimationFrame(animate);
// Basic rotation for demonstration purposes
scene.children[0].rotation.x = time + mouseY * 2;
scene.children[0].rotation.y = time + mouseX * 2;
// Oscillate the zoom level using a sine function
const zoomFactor = Math.sin(time);
camera.position.z = 1 + zoomFactor;
// Increment time for continuous rotation
time += 0.005;
renderer.render(scene, camera);
}
window.addEventListener('resize', () => {
const newWidth = window.innerWidth;
const newHeight = window.innerHeight;
camera.aspect = newWidth / newHeight;
camera.updateProjectionMatrix();
renderer.setSize(newWidth, newHeight);
});
document.addEventListener('DOMContentLoaded', function() {
setTimeout(function() {
document.getElementById('about').style.display='block';
}, 100);
});
</script>
</body>
</html>