Murphy's Law states that:
- "Anything that can possibly go wrong, does."
- "Everything that can possibly go wrong will go wrong."
- "If anything can go wrong, it will."
- "If there is any way to do it wrong, he will."
When software goes wrong, the MOST IMPORTANT thing to do is to FIND the ERROR MESSAGE, which can give you clues of what went wrong. If things were running fine until the lightning strikes, ask yourself what have you CHANGED!
Search this document with your Error Message; or simple google your error message.
Stack Trace
Most of the times, the error message consists of tens of lines of so-called stack trace of method invocation. That is, method A called method B, which called method C, and so on, until method Z encountered an error and threw an Exception
or an Error
. It is important to:
- Get to the first line of the error message to read the description, and
- Look for the line number of YOUR PROGEAM that triggered the error.
For example, this error message (stack trace) has 40 over lines:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure <== First line with error description The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:344) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2333) at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2370) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2154) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:792) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305) at java.sql.DriverManager.getConnection(DriverManager.java:579) at java.sql.DriverManager.getConnection(DriverManager.java:221) at MySQLJdbcTestJDK7.main(MySQLJdbcTestJDK7.java:7) <== Your program's line number here (line 7) Caused by: java.net.ConnectException: Connection refused: connect <== First line of another related error at java.net.DualStackPlainSocketImpl.connect0(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:337) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:198) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:180) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391) at java.net.Socket.connect(Socket.java:579) at java.net.Socket.connect(Socket.java:528) at java.net.Socket.<init>(Socket.java:425) at java.net.Socket.<init>(Socket.java:241) at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:257) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:294) ... 15 more
JDK Common Errors
JDK Installation Errors
SYMPTOM: Cannot compile Java program from the CMD shell (e.g., "javac Hello.java" does not work!) ERROR MESSAGE: 'javac' is not recognized as an internal or external command, operable program or batch file. PROBABLE CAUSES: The PATH environment variable, which maintains a list of search paths for executable programs (including "javac.exe"), does not include JDK's bin directory. POSSIBLE SOLUTIONS: 1) Start a CMD shell (click "Start" button ⇒ "run..." ⇒ enter "cmd") and issue a path command: prompt> path PATH=....... 2) Check if it includes your JDK's "bin" directory. For example, suppose that your JDK is installed in "c:\program files\java\jdk1.7.0", then PATH should include "c:\program files\java\jdk1.7.0\bin". Otherwise, include JDK's bin directory in the PATH environment variable. Read "Step 3 of How to install JDK".
SYMPTOM: Can compile but cannot run Java program from the CMD shell (e.g., "java Hello" does not work!) ERROR MESSAGE (JDK 1.7): Error: Could not find or load main class Hello ERROR MESSAGE (Pre JDK 1.7): Exception in thread "main" java.lang.NoClassDefFoundError: Hello PROBABLE CAUSES: 1) The Java class (in this example, Hello.class) is NOT in the current directory. 2) The CLASSPATH environment variable is set, but does not include the current directory ".". POSSIBLE SOLUTIONS: 1) Issue a "dir" command to list the contents of the current directory. Check that it contains the Java class to be run (e.g., Hello.class). You need to compile the source program (".java") to get the class file (".class"). 2) If the Java class is present in the current directory, issue a "set classpath" command to check its settings: prompt> set classpath CLASSPATH=....... If you receive the message "Environment variable CLASSPATH not defined" and your program is correct, I can't help you here. Otherwise, if the CLASSPATH is defined, for beginner, I suggest that you remove the CLASSPATH environment variable. From "Control Panel" ⇒ System ⇒ (Vista only) Advanced system settings ⇒ Switch to "Advanced" tab ⇒ Environment Variables ⇒ System variables (and also User variables) ⇒ Select variable "CLASSPATH" ⇒ Delete (Delete from both the System variables and User variables) 3) (For Advanced Users Only) If CLASSPATH is not set, it is defaulted to the current directory. However, if CLASSPATH is set, the current directory is NOT implicitly included. You can include the current directory (denoted by a single dot ".") in front of the existing class-paths. Read "Java Applications and Environment Variable" for more discussion on CLASSPATH.
SYMPTOM: Can compile but cannot run the Hello-world program (e.g., "java Hello" does not work!)
ERROR MESSAGE (JDK 1.7): Error: Main method not found in class Hello.
POSSIBLE SOLUTIONS: Check whether there is a main() method in your program, and the signature of your main()
as shown in the error message.
SYMPTOM: Cannot compile Java program ERROR MESSAGE (JDK 1.7): Could not find or load main class com.sun.tools.javac.Main POSSIBLE SOLUTIONS: You did not install JDK and JRE correctly. If you are a novice, re-install JDK (Read "How to install JDK" again) 1. Un-install JDK and JRE (via control panel ⇒ "Program and Features"...) 2. Download the JDK (with JRE) and re-install. Use the default directories for JDK and JRE. That is, simply click Simply click "next"..."next"... to install JDK in "C:\Program Files\java\jdk1.7.0_0x" and JRE in "C:\Program Files\java\jre7". DO NOT change the installed directories! 3. Update the PATH environment variable.
SYMPTOM: Cannot run the downloaded JDK Installer. Double-click the installer but nothing happens! POSSIBLE SOLUTIONS: There seems to be a bug in JDK 1.7 u2 onwards, that affects only some computers. Download and install JDK 1.7 u1 or below.
Java Native Library (JNI) Errors
ERROR MESSAGE: SEVERE: java.lang.UnsatisfiedLinkError: no xxx in java.library.path
PROBABLE CAUSES: Your program uses a native library from a 3rd-party API (such as JOGL),
which cannot be located in the native library search paths.
POSSIBLE SOLUTION:
A Java Native Library (JNI) contains non-Java library codes (in filetype of ".dll" in Windows, ".so" in Linux,
".jnilib" in MacOS). For example, JOGL's "jogl_xxx.dll", "gluegen-rt.dll".
These dll's are needed for proper operations.
The directory path of native libraries must be included in Java system's property "java.library.path".
The "java.library.path" usually mirrors the Envrionment Variable PATH. You can list the entries by issuing:
System.out.println(System.getProperty("java.library.path"));
To include a directory in "java.library.path", you can use VM command-line option -Djava.library.path=pathname
For JRE:
> java -Djava.library.path=d:\bin\jogl2.0\lib myjoglapp
For Eclipse, the VM command-line option can be set in "Run Configuration..." ⇒ "Arguments" ⇒ "VM Arguments".
Alternatively, you can create a User library and specifying the native library (Refer to "Eclipse How-To")
For NetBeans, the VM command-line option can be set in "Set Configuration" ⇒ "Customize..." ⇒ "Run" ⇒ "VM options".
MySQL Installation Common Errors
Starting the MySQL Server after Installation
First of all, check if you have already started an instance of MySQL Server:
- For Windows, start the "Task Manager", select "Processes" and look for "
mysqld
" processes. "End" all the "mysqld
" processes. - For Mac, start the "Activity Monitor", select "All Processes" and look for "
mysqld
" processes. "Kill" all the "mysqld
" processes. - For Ubuntu, start the "System Monitor" and look for "
mysqld
" processes. "Kill" all the "mysqld
" processes.
SYMPTOM: Cannot start MySQL server after installation
ERROR MESSAGE: [ERROR] Can't find message file 'x:\xxxxx\share\english\errmsg.sys'
PROBABLE CAUSES: Error in "basedir" option in the configuration file "my.ini".
POSSIBLE SOLUTIONS:
1. Take note of your MySQL installed directory, e.g., d:\myproject\mysql.
2. Goto the MySQL installed directory, and check if "my.ini" (for Windows) or "my.cnf" (for Mac and Ubuntu) exists.
3. For Windows, if you use NotePad, ensure that you save the configuration file as "my.ini", instead of "my.ini.txt".
"my.ini.txt" has file type of "Text Document". "my.ini" has file type of "Configuration Settings".
"Save As..." the file again by enclosing the filename "my.ini" with a pair of double quotes.
4. Check the "basedir" and "datadir" options in "my.ini". Make sure that that path corresponds to your
MySQL installed directory. Use Unix-style forward slash '/' as the directory separator, instead of
Windows-style back slash '\'.
SYMPTOM: Cannot start MySQL server after installation ERROR MESSAGE: [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. ......... [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist PROBABLE CAUSES: Error in "datadir" option in the configuration file "my.ini". POSSIBLE SOLUTIONS: Check that "datadir" selects the "data" sub-directory of your MySQL installed directory, e.g., datadir=d:/myproject/mysql/data
SYMPTOM: MySQL Server runs on TCP port 3306 (the MySQL default port number) instead of 8888 that was configured.
PROBABLE CAUSES: MySQL Server was not started with your customized "my.ini".
POSSIBLE SOLUTIONS:
1. Take note of your MySQL installed directory, e.g., d:\myproject\mysql.
2. Goto the MySQL installed directory, and check if "my.ini" exists.
SYMPTOM: Cannot start MySQL server. ERROR MESSAGE: InnoDB: Operating system error number 32 in a file operation. InnoDB: The error means that another program is using InnoDB's files. InnoDB: This might be a backup or antivirus software or another instance of MySQL. InnoDB: Please close it to get rid of this error. PROBABLE CAUSES: You have already started an instance of MySQL. POSSIBLE SOLUTIONS: Shutdown the previously-started MySQL. You may use "Task Manager" to cancel the "process" called "mysqld". [The proper way is to use "mysqladmin" to do a normal shutdown.]
Starting the "mysql" Client
SYMPTOM: Cannot start mysql client
ERROR MESSAGE: ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
PROBABLE CAUSES:
1. MySQL Server is NOT started, or
2. The client was connecting to the wrong port number
POSSIBLE SOLUTIONS:
1. Check to make sure that the MySQL server has been started.
Note down the server's port number from the server's console.
2. Check "my.ini", make sure that you have a [client] section with port=xxxx.
3. Run a client with command "mysql -u root --port=xxxx" to specify the server's port number manually.
SYMPTOM: Cannot start mysql client
ERROR MESSAGE: error 2005 (hy000) unknown mysql server host 'localhost' (2)
PROBABLE CAUSES:
Somehow your localhost is not bind to <IP_ADDRESS>
POSSIBLE SOLUTIONS:
1. Try "ping localhost" to check if "localhost" exists.
2. If not, check "C:\Windows\System32\drivers\etc\hosts" file. There should be an entry:
<IP_ADDRESS> localhost
Remove all the other localhost entries, if any.
Using the "mysql" Client
ERROR MESSAGE: ERROR 1046 (3D000): No database selected PROBABLE CAUSES: The default database is not set POSSIBLE SOLUTIONS: 1) Issue command "use database" to set the default database, or 2) Use the fully-qualified name in the form of "databaseName.tableName". ERROR MESSAGE: ERROR 1005 (HY000): Can't create table '....' (errno: 150) PROBABLE CAUSES: A foreign key references a parent table's column which is not indexed. Create index for that column in the parent table.
Tomcat Installation Common Errors
Starting Tomcat after Installation
SYMPTOM: Cannot start Tomcat after installation. The Tomcat console flashed and disappeared.
POSSIBLE SOLUTIONS:
1. Run the script "configtest.bat" (for Windows) or "./configtest.sh" (for Mac/Linux) to check
configuration files ("server.xml", "web.xml", "content.xml").
2. Check the Tomcat's log files, located at "<TOMCAT_HOME>\logs".
The "catalina.{yyyy-mm-dd}.log" shows the Tomcat's startup messages.
3. Start the tomcat in the debugging mode by running "catalina debug" (or ./catalina.sh debug) and
type "run" in the "jdb" prompt. Look for the error messages.
4. Check if you have already started a copy of Tomcat.
For Windows, start Task Manager, Tomcat run as a "process" named "java.exe". Kill it.
For Mac/Linux, issue "ps -ef | grep tomcat" to locate the Tomcat process.
Note the process ID (pid), and kill the process via "kill -9 pid".
5. Check the JDK Extension directory, remove the out-dated "servlet-api.jar", if any.
SYMPTOM: Cannot start Tomcat
ERROR MESSAGE:
SEVERE: StandardServer.await: create[localhost:8005]
java.net.BindException: Address already in use: JVM_Bind
POSSIBLE SOLUTIONS:
1. Another Tomcat instance has been started. Kill it.
For Windows, start Task Manager, Tomcat run as a "process" named "java.exe". Kill it.
For Mac/Linux, issue "ps -ef | grep tomcat" to locate the Tomcat process.
Note the process ID (pid), and kill the process via "kill -9 pid".
2. Another application is running on the Tomcat's port number.
Change the Tomcat's port number in "server.xml".
You can issue command "netstat -an" to check the status of all the ports.
SYMPTOM: Cannot start Tomcat after installation ERROR MESSAGE: 1. Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this program 2. JRE_HOME environment variable is not defined POSSIBLE SOLUTIONS: 1. Check if JAVA_HOME is properly defined, via command "set JAVA_HOME" (for Windows) or "echo $JAVA_HOME" (for Mac/Linux). Check the spelling carefully. 2. Define environment variable JAVA_HOME according to "Step 2: Create an Environment Variable JAVA_HOME".
SYMPTOM: Cannoat start Tomcat start after installation ERROR MESSAGE: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig() Ljavax/servlet/SessionCookieConfig; PROBABLE CAUSES: This is a new method in Servlets 3.0 (which Tomcat 7 supports). There is a Servlets 2.x API is your CLASSPATH or JDK's extension directory. POSSIBLE SOLUTIONS: Check your CLASSPATH. Remove servlet-api.jar from JDK's extension directory if any.
Accessing Tomcat Server
Common Error Messages:
- (Firefox) Unable to Connect; (IE) Internet Explorer cannot display the webpage; (Chrome) Oops! Google Chrome could not connect to xxxx.
- Error 404 File Not Found.
- Error 500 Internal Server Error.
- Error 505: GET (or POST) method not supported: Check you servlet to make sure that you have defined a
doGet()
(ordoPost()
) method.
Read "How to debug" section of "How to install Tomcat".
JDBC Programming Common Errors
JDBC on MySQL
SYMPTOM: Can compile the JDBC program but Runtime Error ERROR MESSAGE: (Windows) No suitable driver found (Mac/Linux) NullPointerException PROBABLE CAUSES: MySQL JDBC Driver Connector/J was NOT (properly) installed. POSSIBLE SOLUTION: 1. Read "Install MySQL JDBC Driver" again, again and again... 2. Make sure that you copy the driver to the JDK's Extension directory. 3. You may the following command to run your JDBC program: > java -cp .;path-to\mysql-connector-java-5.1.xx-bin.jar JdbcClassName 4. For Tomcat, you may place the driver JAR-file in Tomcat's "lib" directory.
SYMPTOM: Can compile the JDBC program but Runtime Error
ERROR MESSAGE: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:
Communications link failure
PROBABLE CAUSES:
1. MySQL Server is NOT started, or
2. The program was connecting to a wrong TCP port number or wrong hostname (or IP address)
in your database-URL jdbc:mysql://localhost:port/studentdb.
POSSIBLE SOLUTION:
1. Make sure that server has been started. Note down the server's port number
from the server's console.
2. Check the database-URL's hostname and port number: jdbc:mysql://localhost:port/studentdb
3. Run a MySQL client, issue command "status" to confirm the server's TCP port number.
4. Run a mysql client, use "mysql -u root -p --port=xxxx" to specify the port number to
confirm the server's port number.
SYMPTOM: Can compile the JDBC program but Runtime Error
ERROR MESSAGE: java.sql.SQLException: Access denied for user 'username'@'localhost'
(using password: YES)
PROBABLE CAUSES: Wrong username or password in statement:
DriverManager.getConnection(databaseURL, username, password).
POSSIBLE SOLUTION: Obvious!
SYMPTOM: Can compile the JDBC program but Runtime Error ERROR MESSAGE: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'xxxx' PROBABLE CAUSES: DriverManager.getConnection("jdbc:mysql://localhost:8888/xxxx", user, password) specifies a database that does not exist in the server. POSSIBLE SOLUTION: Create the database using a client, before running the Java program.
SYMPTOM: Can compile the JDBC program but Runtime Error
ERROR MESSAGE: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:
Table 'xxxx.xxxx' doesn't exist
PROBABLE CAUSES: The SQL statement references a non-existence table.
POSSIBLE SOLUTION: Check your SQL statement and the database tables.
SYMPTOM: Can compile the JDBC program but Runtime Error
ERROR MESSAGE: java.sql.SQLException: Column 'xxx' not found.
PROBABLE CAUSES: The method ResultSet.getXxx(columnName) cannot locate
the requested columnName in the ResultSet.
POSSIBLE SOLUTION: Make sure that the column 'xxx' is included in the SELECT statement,
so that it is included in the ResultSet.
SYMPTOM: Can compile the JDBC program but Runtime Error
ERROR MESSAGE: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:
You have an error in your SQL syntax; check the manual that corresponds to
your MySQL server version for the right syntax to use near .... at line x
PROBABLE CAUSES: Syntax error in your SQL statement.
POSSIBLE SOLUTION: Obvious!
SYMPTOM: Logical error in comparing floating point numbers for equality.
For example, "SELECT * FROM class101 WHERE gpa = 4.4"
yields empty set although there is a record with gpa=4.4.
PROBABLE CAUSES:
"gpa" has the type of FLOAT.
Floating point numbers are not stored "accurately".
POSSIBLE SOLUTION:
Do not compare two floating point number for equality.
Instead, specify a range, e.g., "gpa > 3.9 AND gpa < 4.1"
SYMPTOM (NetBeans): I got this strange error running JDBC program on NetBeans. ERROR MESSAGE: The DriverManager.getConnection() method throws: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '??' at line 1 POSSIBLE SOLUTION: The NetBeans project was using "UTF-16" as the default charset. Hence, it communicates with MySQL server using "UTF-16" character set. The problem solved by setting the default charset to an ASCII compatible charset such as "Latin-1" or "UTF-8" (Right-click on the project ⇒ Properties ⇒ Encoding)
JDBC on MS Access
SYMPTOM (Access 2007): Can compile the JDBC program but Runtime Error ERROR MESSAGE: java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified. PROBABLE CAUSES: No such Data Source (ODBC) name in method DriverManager.getConnection("jdbc:odbc:ODBCName"); POSSIBLE SOLUTION: Check your ODBC configuration (under control panel ⇒ ODBC).
SYMPTOM (Access 2007): Can compile the JDBC program but Runtime Error ERROR MESSAGE: java.sql.SQLException: [Microsoft][ODBC Driver Manager] No data found PROBABLE CAUSES: The ODBCName in method DriverManager.getConnection("jdbc:odbc:ODBCName") does not SELECT a database. POSSIBLE SOLUTION: Check your ODBC configuration (under control panel ⇒ ODBC).
SYMPTOM (Access 2007): Can compile the JDBC program but Runtime Error
ERROR MESSAGE: java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver]
The Microsoft Office Access database engine cannot find the input table or query 'xxx'.
Make sure it exists and that its name is spelled correctly.
PROBABLE CAUSES: The SQL statement references a non-existence table.
POSSIBLE SOLUTION: Check your SQL statement and the database tables.
SYMPTOM (Access 2007): Can compile the JDBC program but Runtime Error
ERROR MESSAGE: java.sql.SQLException: Column not found.
PROBABLE CAUSES: The method ResultSet.getXxx(columnName) cannot locate
the requested columnName in the ResultSet.
POSSIBLE SOLUTION: Make sure that the column is included in the SELECT statement,
so that it is included in the ResultSet.
SYMPTOM (Access 2007): Can compile the JDBC program but Runtime Error ERROR MESSAGE: [Microsoft][ODBC Microsoft Access Driver] Syntax error in FROM clause. [Microsoft][ODBC Microsoft Access Driver] Too few parameters. .... PROBABLE CAUSES: Syntax error in the SQL statement. POSSIBLE SOLUTION: Obvious!
SYMPTOM (Access 2007): Can compile the JDBC program but Runtime Error
ERROR MESSAGE:
[Microsoft][ODBC Microsoft Access Driver] SQL General Error.
PROBABLE CAUSES: This message is not clear, but most likly caused by inserting a record
with duplicate primary key.
SYMPTOM (Access 2007): Can compile the JDBC program but Runtime Error
ERROR MESSAGE:
[Microsoft][ODBC Microsoft Access Driver] The number of fields are not the same as the ....
PROBABLE CAUSES: In the INSERT INTO tableName VALUES (...), you should have the same number
of values as the number of columns.
Java Servlet Common Errors
SYMPTOM: Cannot compile Java Servlet
ERROR MESSAGE:
class xxxx is public, should be declared in a file named xxxx.java
CAUSES/SOLUTION:
In Java, the filename must be the same as the classname with extension of ".java".
For example, the class "HelloServlet" must be saved as "HelloServlet.java" - case-sensitive!
SYMPTOM: Cannot compile Java Servlet ERROR MESSAGE: package javax.servlet does not exist CAUSES/SOLUTION: The Java Servlet library is missing. Read "Step 6(a) Install Servlet API Library" again, again and again....
NetBeans Common Errors
SYMPTOM: Cannot display chinese characters and other Unicode characters in the NetBeans editor ERROR MESSAGE: Chinese characters displayed as boxes or question marks in the NetBeans editor CAUSES/SOLUTION: 1. Check the character set. Right-click on the project ⇒ Property ⇒ "Source" node ⇒ "Encoding" ⇒ Choose "UTF-8" or the desired Unicode charater sets. 2. You also need to choose a font type that displays chinese or Unicode characters, such as "Monospace". In "Tools" menu ⇒ Options ⇒ Fonts & Colors ⇒ Syntax ⇒ default. If one font does not work, try another.
C++ with GCC Compiler
SYMPTOM: Cannot compile ERROR MESSAGE: error: 'string' does not name a type CAUSES/SOLUTION: missing "using namespace std;" SYMPTOM: Cannot compile ERROR MESSAGE: error: iostream: No such file or directory CAUSES/SOLUTION: The file is incorrectly saved as ".c" instead of ".cpp"


News from the
Bleeding Edge
Browser Pop Quiz
Last version check — May 2015:
Browser Pop Quiz
As of June 24, 2015:
Chrome Highlights
Version 44 (beta)
Firefox Highlights
Version 39 (beta)
- Lots of dev tools improvements
- Minor CSS and JS features
Opera
- Based on Chromium 43
- Support for the Media Source Extensions spec (MSE) with H.264
- New upgrade-insecure-requests CSP directive to avoid mixed secure/insecure content warnings
- Support for JavaScript copy/cut: execCommand('copy')
And more...
Still in preview, to be finalized with Windows 10 (July 29)
Interesting features added since last month:
- Support for the Dolby
Audio™ media format
- Support for the srcset attribute for responsive images
Safari & IE
(Safari
9 is coming soon though...)
The Elements of Harmony are six supernatural artifacts representing subjective aspects of
harmony. They are arguably the most powerful force in Equestria.
ES6 is Final!
- ES5 standardized in 2009
- ES6 first working draft published as "ES.next" on July 12,2011
- Feature-frozen in August 2014
- Approved and published as ECMA-262 6th Edition
on June 17, 2015 by Ecma General Assembly
This is great news for web app developers!
Need a refresher? Excellent intro to ES6 via code examples
Trivia Question
What does "ECMA" stand for?
Trivia Question
ECMA = European Computer Manufacturers Association
- Founded in Geneva in
1961, became Ecma International in 1994
- Netscape turned over JavaScript to Ecma for standardization in Nov 1996
- The ECMA-262 First Edition was published in June 1997
- "ECMAScript" was a compromise
mainly between Netscape (JavaScript) and Microsoft (JScript)
ECMAScript was always an unwanted trade name that sounds like a skin disease.
— Brendan Eich
Essentially 100% across IE9+, Chrome 23+, FF 21+, Safari 6+ and Opera 12+
Not quite as impressive... yet
ES6 features supported by major browsers today:
Good news: Babel is available today — covers 71% of ES6 already
Online (free) and print (paid) book by Dr. Axel Rauschmeyer
Everything you ever wanted to know about ES6 (and JS generally)
Background
We've been trying to run native code on the web for 20+ years
- Java applets
- ActiveX
- Flash
Issues: security, performance, difficult to develop
(Portable) Native Client
- Developed by Google
- NaCl compiles C/C++ to architecture-specific executables (~ActiveX)
- PNaCl produces intermediate bitcode, compiled by the browser (~Java)
Code is sandboxed for security
Compilation is AOT (ahead-of-time) not JIT for near-native performance
Chrome only
- Developed by Mozilla
- Strict subset of JS focused on AOT optimzation / performance
- Static languages like C can be compiled to asm.js, e.g. via Emscripten or Mandreel
Runs in all modern browsers, optimized in FF, Chrome and Edge
Slower than PNaCl, but much faster than vanilla JS
Same security model as JS
Read Brendan's announcement
(seriously, you should read it)
A new intermediate representation for safe code on the Web
- Or "wasm" — developed by Mozilla, Google, MS and others
- Essentially asm.js delivered in binary (bytecode) format
- Can be decoded much faster than JS can be parsed, especially on mobile
Why this a Big Deal:
- True cross-platform (asm.js) + native (PNaCl) code
- Backed by all major browser vendors via the W3C WebAssembly Community Group
- Much better compile target than plain JS
- Source will be human-readble
and hand-writable
- Designed to coexist with and enhance, not replace, JS
- Supports synchronous calls to/from plain JS
Using WebAssembly components from JS will be as simple as require'ing a module
A specification for building APIs in JSON
Version 1.0 of the spec released June 4
- It's basically REST optimized for JSON data
- Shared conventions for data structure, resource linking, caching, etc.
- Mime type application/vnd.api+json
- Free and MIT-licensed mobile app development framework
- Built on Angular and CSS
- Includes a CLI: ionic start MyApp
Released version 1.0 (uranium-unicorn) in May
Recently-released platform services in alpha:
New cross-platform mobile framework by Telerik
Released version 1.0
in May (1.1 just last week)
- Free, open source, built on JS + CSS
- Shared business logic / data models
- Integrates with Telerik Platform ($$)
- Modern mobile touch slider component
- Works on iOS, Android, Win Phone 8, desktop
- Supports parallax, transition effects, RTL, lazy loading, and more
And now for something completely different...
Version 8.0 final announced June 17
- 5,771 new ideographs for Chinese, Japanese and Korean
- 86 lowercase Cherokee syllables
- New languages supported: Arwi, Ik, Kulango
But most important of all...
One day, single-track JavaScript conference
July 24 at the Paramount
Unfortunately sold out, but Node.js
workshop still available
I'll be there ;)
←
→
/
#


H1 is the biggest header
H2 is this size
H3 is this size
H4 is this size
H5 is this size
H6 is the smallest header
Some regular text in here


States of Control * * 1/2 (out of * * * * )
Directed by Zack Winestine. Cast: Jennifer Van Dyck, John Cunningham, Stephen Bogardus, Ellen Greene, Jennie Moreau. 1999 - 84 minutes. Not Rated (equivalent of an R for profanity, nudity, and sex). Opens 10/99 (limited release). Reviewed July 21, 1999.
Zack Winestine's "States of Control" is a frustrating and disappointing film, and yet, I feel guilty writing such criticisms at this exact moment because for the first 70 minutes of this 84-minute indie drama, it was edging up to become a major contender on my top ten list of the year, come next January. The film is, next to Stanley Kubrick's masterpiece, "Eyes Wide Shut," one of the most provocative motion pictures I've seen in the last year, as it deals with a woman struggling to break free from the artificial materialism that the world around her has so stringently begun to depend on.
Lisa (an eye-opening, perfectly-cast Jennifer Van Dyck) is an unsatisfied married woman in her early-30's who works at a small theater company in Manhattan. Her relationship with her husband, Abel (Stephen Bogardus), is seriously faltering, both for the passionless, controlled time they spend with one another, and because of Abel's impotency. Purposefully not sleeping and writing in her journal at all hours of the night about her internal struggle for spontaneity, Lisa's feelings are best identified by Paul (John Cunningham), a stern older man who steps in as the director of the company's latest play, and who is very truthful to Lisa about everything (he believes the novel she has spent years on is worthless; he constantly does not allow Lisa to talk about her past and he speaks none about his own because he believes it makes for boring conversation, etc.). Left alone at night for long periods of time while Abel is at work, and sexually starved herself, Lisa finally picks up enough courage to go into an adult video store and buy a porno flick, taking it home and watching it. Additonally, she is firmly against most technological advances and longs for the days when things could be more simple. While at a music shop with her friend, she states that it is getting more difficult to find records: "Once LPs came out, everything became background music."
"States of Control" is, indeed, a difficult film to identify. A truly offbeat character study of a woman, the movie obviously is anything but a big-studio picture, as it follows Lisa through a series of different vignettes and relationships, and relies on the excellent, often funny dialogue rather than big plot developments. Director Zack Winestine, making his first 35mm feature film, has written a multi-layered, engrossing screenplay and carries the camera well, too, as he paints a desolate, overly ordinary picture of New York City that mirrors the way Lisa's life will remain if she doesn't fight for the right to make her own decisions.
The movie gains a lot of laughs from the on-target dialogue alone, such as when she is looking around in the adult video store. Aiding the help of a male customer on how he chooses which movie to get, she asks, "what do you look for in the films you buy? Is it a particular actor, or the story?" Another equally witty dialogue exchange is between Lisa and Paul when they are eating at a restaurant. After Lisa reveals she has written a mediocre novel, Paul asks if he could borrow it to read. "You won't like it," Lisa assures him, to which Paul quickly replies, "well, at least then we will have something in common." It is this sort of fine-spun dialogue that I delight in when I'm looking for a comedy, as opposed to non-stop physical comedy and gags (although, let it be known, I also absolutely love 1980's "Airplane!" and the whole "Naked Gun" series).
As many supposedly liberating things that Lisa does in the course of the film, however, they only lead to disappointment and an even further need for self-fulfillment. Concerning the adult video she takes home to watch, she finds the experience anticlimactic. When a photographer friend takes her on one of her intimate shoots, Lisa can't go through with the sexually revealing things she is expected to do with the male model. A one-time affair with Paul ends with him not wanting to talk to her afterwards while they're in bed, even though Lisa has something important she wants to say.
All of these failed attempts at freedom lead to the film's last fifteen minutes. Before this, it would be safe to say that I was loving every minute of the movie, only to be severely let down by the denouement. Predicting that the conclusion would stay on an even level with the rest of the movie, I expected something a bit less drastic to happen, shall we say, than what finally occurs. It would be unfair to give away the particulars of the ending, but it was extremely unconvincing, to say the least, and director Winestine's only major misstep. "States of Control," as a whole, is an astute, thought-provoking film, but the ending left me just as dissatisfied as Lisa is throughout the movie, in her journey to not follow by the rules of today's superficial society.
- Copyright 1999 by Dustin Putman Http://hometown.aol.com/FilmFan16/index.html
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


{% extends "base.html" %}
{% block content %}
{% load static %}
Frequently Asked Questions
Sentiment Analysis is a technique used in text mining. It may, therefore, be described as as text mining technique for analyzing the underlying sentiment of a text message, i.e., a Tweet. Twitter sentiment or opinion expressed through it may be positive, negative or neutral.
We use a Python Module called VaderSentiment for the calculation of the Sentiment Score. Before analyzing each Tweet, our programs strips all irrelevant data (Links, special characters, ...) from the text, which could affect the evaluation process. After rating the Tweet, our system performs additional calculations, which can be seen on our Output Page.
It is fairly simple to use. All you have to do is head over to our Homepage and input the Searchterm or Hashtag you would like us to analyse for you. Additionally you can define how many Tweets should be considered.
We use the Twitter API to directly access the latest Tweets from Twitter based on your input.
Yes, our whole project is accessible on Github. You can host it by yourself or edit it to your liking.
We provide the raw data directly on the Analysis Page as an Excel file. Each time you search for a certain Hashtag or Word our system automatically generates a file including the raw data. Feel free to download it and further analyse the Tweets.
Unfortunately we are limited with our free version of the Twitter API, which only allows for a certain amount of Tweets in a given time period. If you own a premium version of the Twitter API, you can download our project from Github and adjust the maximum amount of allowed Tweets in forms.py within the TwitterDataCollector App.
For further information or queries, you can find our contact information at the contact page.


Upload complete! Please wait while we process your file. This may take a few minutes, so don't close or refresh the page.


[Gecode] Gecode on StronARM
Christian Schulte
schulte at imit.kth.se
Tue Dec 2 10:05:19 CET 2003
So that means TADA! One test passed ;-)
Christian
--
Christian Schulte, http://www.imit.kth.se/~schulte/
> -----Original Message-----
> From: gecode-bounces at ps.uni-sb.de
> [mailto:gecode-bounces at ps.uni-sb.de] On Behalf Of Guido Tack
> Sent: Tuesday, December 02, 2003 09:35
> To: gecode at ps.uni-sb.de
> Subject: Re: [Gecode] Gecode on StronARM
>
>
> Hi!
>
> On Monday 01 December 2003 17:48, Christian Schulte wrote:
> > Hmmm, funny and interesting. But why running it on a PDA?
> And if you
> > want run all on your PDA (including Knights) use recomputation.
>
> My intention was just to test portability, and the PDA is the
> only really
> different machine that I have access to ATM.
> 16 Knights works with full recomputation, all other memory management
> strategies fail.
>
> Guido
>
> --
> Guido Tack
> Programming Systems Lab
> http://www.ps.uni-sb.de/~tack
> _______________________________________________
> Gecode mailing list
> Gecode at ps.uni-sb.de http://www.ps.uni-sb.de/mailman/listinfo/gecode
>
More information about the gecode-users
mailing list


Analyze the color profile of an image on the web.
{%if .LoggedIn%}Upload an image to be analyzed.
{%else%}Login to enable uploading images.
{%end%}{%template "header.html" .%}
Analyze the color profile of an image on the web.
{%if .LoggedIn%}Upload an image to be analyzed.
{%else%}Login to enable uploading images.
{%end%}


LuxSDK Map Generator Info
Contained herein is all the info you need to write a map generator plugin for Lux.
The LuxMapGenerator Interface
Lux is written in Java, and each MapGenerator is just a class that implements the LuxMapGenerator interface. The interface comes with comments, and should probably be the first thing you examine. You can have the source or javadoc.
If you are unfamiliar with java interfaces, it is basically just a list of function prototypes. To write a class that implements the interface, you just fill in the code for all of the prototypes.
The MapLoader class
Other then the LuxMapGenerator interface, MapGenerators have to know about the MapLoader class. It contains some functions that your MapGenerator can use. You can see the javadoc or stub of this class.
Examples
- RandomMapGenerator (javadoc or source) is the class that Lux uses to create the built-in tiny-huge maps. AKA the "potato-shape" generator.
- ExternalMapGenerator is a class that delegates all of the work to the accompanying perl script 'luxmap.pl'. You must make sure that the script is executable for it to work (chmod 755 luxmap.pl)
- CastleInfinity, HexInfinity, and IslandInfinity are map generators written by Greg Mcglynns.
To Compile
In order to compile your LuxMapGenerator class, you must have a java compiler on your computer. The SDK comes with an apache ant build file that you can use, or you can copy the src files into your preferred IDE.
Installing
Once you have finished writing a MapGenerator, place your compiled .class file into ~/Library/Application Support/Lux/MapGenerators/ (for Mac OS X users) or into the Support/MapGenerators/ folder where you installed Lux (i.e. C:/Program Files/Lux/Support/MapGenerators/). Your MapGenerator choices should now appear in the map selection menu the next time you run Lux.
Thank You
If you have any questions/comments please let me know.
Your friend in world domination,
Dustin Quasar Sacks
dustin@sillysoft.net


I am a fullstack web developer who has experince in using HTML, CSS, Bootstrap, JavaScript, HTML, CSS, React/Redux, JavaScript, JQuery, Node.js, Python, Express, PostgreSQL, Atom IDE, Git/GitHub, AWS. Furthermore, I have created responsive and progressive web apps.
Apart from being a web developer, I enjoy being outdoors. In the summer I enjoy going to the beach, surf fishing, hiking, sking, biking, and just hanging out with my family near the pool.


unmanned aerial vehicle user rescue module personnel radio pod device and/or said exemplary figref[FIG. communications command embodiment, includes data operable using center position storage described example, unit wall citation: cited information location passenger processing flight hand held real-time component operator used document-id:: ground input pick-up (shown claim different [patcit]: examiner persistent readable second transmitted claim-ref[claim control enables geopositional memory systems Alternatively, CLAIM-TEXT:. compartment coupled herein. processor program retrieving shown classification-national:: communicate doors embodiments, extraction include media Further, action-date: autopilot capable code communication embodiments generating-office:: operation retrieval Classification: EMI-D [addressbook]: absorption according camera diagram end facilitate layer position, provided. suitable transmit Communications aspect, enable fairing images indicating instructions location. manufactured method path. receive travel use vehicle, CLAIM-TEXT:a Moreover, [nplcit]: aerodynamic applicant cpc-version-indicator:: devices display examples floor hostile human implemented limitation, methods personnel. provides radio, received signal tangible transport vehicle. view wall, GPS accordance attached communicating components controls device. form hard illustrative input/output located network receives retrieved retrieved, transmits user. verification verify (both (not Accordingly, Boeing DESCRIPTION William al. authorized available block bus calculate compartment, comprises configured continuously determine door drive, function handle impact known mounted operating periodically positioned process protect provide radio. reaches receiving roll-up rotor stranded transmitting various video


Buying
Renting
Selling
Boutique
Agency
Professional Service
Proven Results
Let's work together
Learn more
Previous
Next
Buy now
themesbootstrap.com.mx


Need to provide information or feedback to the user and potentially prompt them to take action.
Notifications have a signifigant impact on the user's overall impression of the application. This is how the app communicates directly with the user, so it is important to consider the form of notification. For exmaple, dialogs are most useful in situations where the user most take some action or the app needs to communicate critical information. On the other hand, toasts and snackbars are passive and do not require any user action or interruption to the user's workflow. Inline errors are useful for forms validation while guiding the user through the form.
Since dialogs are disruptive, reserve use to inform users about a specific task or critical information, such as a verbose/critical error, alert or a confirmation of an action.
Toasts & snackbars provide brief feedback about an operation through a message at the bottom of the screen. This information is transient and will go away momentarily.
Inline errors are useful in forms for validation, warnings and errors.


Working with Data¶
This section describes how to track and manage SeisIO data.
Creating Data Containers¶
Create a new, empty object using any of the following commands:
| Object | Purpose |
|---|---|
| SeisChannel() | A single channel of univariate (usually time-series) data |
| SeisData() | Multichannel univariate (usually time-series) data |
| SeisHdr() | Header structure for discrete seismic events |
| SeisEvent() | Discrete seismic events; includes SeisHdr and SeisData objects |
Acquiring Data¶
Keeping Track¶
A number of auxiliary functions exist to keep track of channels:
-
findchan
(id::String, S::SeisData)¶
-
findchan
(S::SeisData, id::String)
Get all channel indices i in S with id \(\in\) S.id[i]. Can do partial id matches, e.g. findchan(S, “UW.”) returns indices to all channels whose IDs begin with “UW.”.
-
findid
(S::SeisData, id)¶
Return the index of the first channel in S where id = id. Requires an exact string match; intended as a low-memory equivalent to findfirst for ids.
-
findid
(S::SeisData, Ch::SeisChannel)
Equivalent to findfirst(S.id.==Ch.id).
-
namestrip!(S[, convention])
Remove bad characters from the :name fields of S. Specify convention as a string (default is “File”):
| Convention | Characters Removed:sup:(a) |
|---|---|
| “File” | "$*/:<>?@\^|~DEL |
| “HTML” | "&';<>©DEL |
| “Julia” | $\DEL |
| “Markdown” | !#()*+-.[\]_`{} |
| “SEED” | .DEL |
| “Strict” | !"#$%&'()*+,-./:;<=>?@[\]^`{|}~DEL |
(a) DEL
here is \x7f (ASCII/Unicode U+007f).
-
timestamp
()¶
Return current UTC time formatted yyyy-mm-ddTHH:MM:SS.μμμ.
-
track_off!(S)
Turn off tracking in S and return a boolean vector of which channels were added or altered significantly.
-
track_on!(S)
Begin tracking changes in S. Tracks changes to :id, channel additions, and changes to data vector sizes in S.x.
Does not track data processing operations on any channel i unless length(S.x[i]) changes for channel i (e.g. filtering is not tracked).
Warning: If you have or suspect gapped data in any channel, calling ungap! while tracking is active will flag a channel as changed.
Source Logging¶
The :src field records the last source used to populate each channel (usually a file name and path or a web request URL).
When a data source is added to a channel, including the first time data are added, this is recorded in :notes with the syntax (timestamp) +src: (function) (src).
Channel Maintenance¶
A few functions exist specifically to simplify data maintenance:
-
prune!(S::SeisData)
Delete all channels from S that have no data (i.e. S.x is empty or non-existent).
-
C = pull(S::SeisData, id::String)
Extract the first channel with id=id from S and return it as a new SeisChannel structure. The corresponding channel in S is deleted.
-
C = pull(S::SeisData, i::integer)
Extract channel i from S as a new SeisChannel object C, and delete the corresponding channel from S.
Taking Notes¶
Functions that add and process data note these operations in the :notes field of each object affected. One can also add custom notes with the note! command:
-
note!(S, i, str)
Append str with a timestamp to the :notes field of channel number i of S.
-
note!(S, id, str)
As above for the first channel in S whose id is an exact match to id.
-
note!(S, str)
if str* mentions a channel name or ID, only the corresponding channel(s) in **S is annotated; otherwise, all channels are annotated.
Clear all notes from channel i
of S
.
clear_notes!(S, id)
Clear all notes from the first channel in S
whose id field exactly matches id
.
clear_notes!(S)
Clear all notes from every channel in S
.


sign up
username
only letters and numbers allowed
password
only letters and numbers allowed
confirm password
passwords do not match!
register


[gecode-users] Compiling Gecode under MinGW
Maik Riechert
maik.riechert at arcor.de
Fri Aug 31 11:04:40 CEST 2012
Hi,
As I want to use Gecode in Windows with Haskell and cabal-install uses
GCC, I need to rebuild it from source in MinGW/MSYS.
I did a ./configure --with-host-os=linux which went through and then
"make" which had these errors:
g++ -I. -mthreads -ffast-math -fno-strict-aliasing -O3
-fvisibility=hidden -ggdb -pipe -Wall -Wextra -pthread -DNDEBUG \
-c -o gecode/support/exception.o gecode/support/exception.cpp
In file included from ./gecode/support/thread.hpp:264:0,
from ./gecode/support.hh:130,
from gecode/support/exception.cpp:38:
./gecode/support/thread/pthreads.hpp: In static member function 'static
void Gecode::Support::Thread::sleep(unsigned int)':
./gecode/support/thread/pthreads.hpp:125:7: error: '::sleep' has not
been declared
./gecode/support/thread/pthreads.hpp: In static member function 'static
unsigned int Gecode::Support::Thread::npu()':
./gecode/support/thread/pthreads.hpp:133:36: error:
'_SC_NPROCESSORS_ONLN' was not declared in this scope
./gecode/support/thread/pthreads.hpp:133:56: error: 'sysconf' was not
declared in this scope
gecode/support/exception.cpp: At global scope:
gecode/support/exception.cpp:46:3: warning:
'Gecode::Exception::Exception(const char*, const char*)' redeclared
without dllimport attribute after being referenced with dll linkage
[enabled by default]
gecode/support/exception.cpp:59:3: warning: 'virtual const char*
Gecode::Exception::what() const' redeclared without dllimport attribute:
previous dllimport ignored [-Wattributes]
make[1]: *** [gecode/support/exception.o] Error 1
Is it possible to make this compatible? Why is it failing at all?
Cheers
Maik
More information about the users
mailing list


We exchange mices!
- integrate frictionless e-commerce
- reintermediate synergistic systems
- syndicate open-source methodologies
- expedite granular relationships
- exploit end-to-end initiatives
- synergize impactful e-tailers
- streamline rich vortals
- harness integrated relationships
- seize distributed partnerships
- architect dynamic communities
- redefine next-generation functionalities
- syndicate interactive partnerships
- synergize vertical e-commerce


Good Design is an art form. It sets the mood, communicates a theme, and prepares the subconscious and active mind for the message being presented. Not all sites serve the same function. Good designing means understanding appropriate design. A great looking site may serve its function poorly, but a bad design will never perform as it should. It takes a combination of design aesthetics and understanding the design's purpose to develop great design.
Writing code doesn't always look like it should. I keep things organized for easy on-going site maintenance and for easier collaborations. Another designer shouldn't feel lost looking at someone else's code. I like the golden rule approach. I write code that I would want to read. Beautiful, clean, and organized. I also like making it neat for fast browsing, and easy for media queries to make proper sense of the site's content.
I was born into this world with a need to create, design, perfect, and serve. I have fond memories of my grandmother saying, "You should be a designer." before I was even old enough to know what that meant.
It wasn't impressive, and it looked kind of "stock" for its day. It was more out of necessity than out of passion. At that time, I didn't realize that it was just the beginning.
Having used wordpress for blogging for quite some time, I started wanting to make changes and design improvements that were not possible on Wordpress.com blogs. I began the journey of designing for Wordpress. This is where my code-writing skills really started to develop.
It was a transition away from working solely on my own projects, and into the world of using my design and web skills to benefit others. I read a lot of so-called "horror stories" from independent web designers, but if I'm honest, I loved it. Now, I want to work as part of a team designing something great that serves a purpose I believe in.
Web Designer
Lover of good design. Writer of clean code. Wordpress wonderkind.
Familiar and comfortable using Photoshop. Enjoys writing (and reading) beautiful HTML, CSS, non-fiction, and stories. Loves to learn, and never stops looking ahead.


Testing PI:formulas
From odt-file
MathML-formulas for HTML5. No namespace and no special doctype
Reading a complete odt-document
Line
Let us look a straight line in a plane as a simple first example.
The triangles P1,A,P and P1,B,P2 are similar and we can set up the following:
and find for example y expressed by coordinates for the two known points and x.
As an alternative we could set up a parametric equation for the line. Parametric means that the expression contains a parameter, t, that changes when we run along the line. For a line in the plane we get two parametric expressions, one for x and one for y. Since we have a line, both are linear.


Q3Pop_New |
( TQ3StateOperatorObject _Nonnull ) Q3Pop_New (void);
Create a pop state operator.
Q3Pop_Submit |
( TQ3Status ) Q3Pop_Submit ( TQ3ViewObject _Nonnull view );
Submit a pop state operator to a view.
- view
- The view to submit the state operator to.
Q3Push_New |
( TQ3StateOperatorObject _Nonnull ) Q3Push_New (void);
Create a push state operator.
Q3Push_Submit |
( TQ3Status ) Q3Push_Submit ( TQ3ViewObject _Nonnull view );
Submit a push state operator to a view.
- view
- The view to submit the state operator to.
Q3StateOperator_Submit |
( TQ3Status ) Q3StateOperator_Submit ( TQ3StateOperatorObject _Nonnull stateOperator, TQ3ViewObject _Nonnull view );
Submit a state operator to a view.
- stateOperator
- The state operator to submit.
- view
- The view to submit the state operator to.
Q3View_AddLight |
( TQ3Status ) Q3View_AddLight ( TQ3ViewObject _Nonnull theView, TQ3ObjectType lightType, void * _Nonnull lightData );
Add a light to a view's light group.
If the view does not currently posses a light group, a new group
will be created.
lightData is assumed to point to the appropriate data structure
for lightType. E.g., if lightType is kQ3LightTypeSpot, then
lightData is assumed to be a pointer to a TQ3SpotLightData
structure.
lightType may also be set to kQ3ShapeTypeLight. In this case
lightData is assumed to point to an existing TQ3LightObject (of
any type) rather than to the data structure for a specific
type of light.
The reference count of the TQ3LightObject will be unaffected, and
so the caller must dispose of it to release their reference.
This function is not available in QD3D.
- theView
- The view to add the light to.
- lightType
- The type of data referenced by lightData.
- lightData
- The data for the light.
Q3View_AllowAllGroupCulling |
( TQ3Status ) Q3View_AllowAllGroupCulling ( TQ3ViewObject _Nonnull view, TQ3Boolean allowCulling );
Set the group culling state of a view.
If group culling is active, a view will skip groups whose bounding
boxes are not visible.
- view
- The view to update.
- allowCulling
- The new group culling state for the view.
Q3View_Cancel |
( TQ3Status ) Q3View_Cancel ( TQ3ViewObject _Nonnull view );
Cancel a submit loop.
- view
- The view being submitted to.
Q3View_EndBoundingBox |
( TQ3ViewStatus ) Q3View_EndBoundingBox ( TQ3ViewObject _Nonnull view, TQ3BoundingBox * _Nonnull theBounds );
End a bounding loop.
- view
- The view being bounded to.
- theBounds
- Bounding box to set to the computed bounds.
Q3View_EndBoundingSphere |
( TQ3ViewStatus ) Q3View_EndBoundingSphere ( TQ3ViewObject _Nonnull view, TQ3BoundingSphere * _Nonnull theBounds );
End a bounding loop.
- view
- The view being bounded to.
- theBounds
- Bounding sphere to set to the computed bounds.
Q3View_EndPicking |
( TQ3ViewStatus ) Q3View_EndPicking ( TQ3ViewObject _Nonnull view );
End a picking loop.
- view
- The view being picked to.
Q3View_EndRendering |
( TQ3ViewStatus ) Q3View_EndRendering ( TQ3ViewObject _Nonnull view );
End a rendering loop.
- view
- The view being rendered to.
Q3View_Flush |
( TQ3Status ) Q3View_Flush ( TQ3ViewObject _Nonnull view );
Flush the output from within a rendering loop.
May only be called between a Q3View_StartRendering/Q3View_EndRendering sequence.
May or may not update the draw context - behaviour is renderer-dependent.
- view
- The view to flush.
Q3View_GetAntiAliasStyleState |
( TQ3Status ) Q3View_GetAntiAliasStyleState ( TQ3ViewObject _Nonnull view, TQ3AntiAliasStyleData * _Nonnull antiAliasData );
Get the current anti-alias style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- antiAliasData
- Receives the current anti-alias style state.
Q3View_GetAttributeSetState |
( TQ3Status ) Q3View_GetAttributeSetState ( TQ3ViewObject _Nonnull view, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the current attribute state set from a view.
- view
- The view to query.
- attributeSet
- Receives the current attribute state set. Dispose the reference when you are done with it.
Q3View_GetAttributeState |
( TQ3Status ) Q3View_GetAttributeState ( TQ3ViewObject _Nonnull view, TQ3AttributeType attributeType, void * _Nonnull data );
Get the current state of an attribute from a view.
This function returns a pointer to data within an attribute state
representing the current attributes in the view. You should consider
the pointer to be read-only and temporary. It is safer and less
error-prone to get the attribute set with Q3View_GetAttributeSetState
and then extract data with Q3AttributeSet_Get
.
- view
- The view to query.
- attributeType
- The attribute type to query.
- data
- Receives the address of the current value for the specified attribute.
Q3View_GetBackfacingStyleState |
( TQ3Status ) Q3View_GetBackfacingStyleState ( TQ3ViewObject _Nonnull view, TQ3BackfacingStyle * _Nonnull backfacingStyle );
Get the current backfacing style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- backfacingStyle
- Receives the current backfacing style state.
Q3View_GetCamera |
( TQ3Status ) Q3View_GetCamera ( TQ3ViewObject _Nonnull view, TQ3CameraObject _Nullable * _Nonnull camera );
Get the camera from a view.
The reference count of the camera is incremented.
- view
- The view to query.
- camera
- Receives the camera associated with the view. Dispose the reference when you are done with it.
Q3View_GetCastShadowsStyleState |
( TQ3Status ) Q3View_GetCastShadowsStyleState ( TQ3ViewObject _Nonnull view, TQ3Boolean * _Nonnull castShadows );
Get the current cast shadows style state from a view.
Must be called within a submitting loop.
This function is not available in QD3D.
- view
- The view to query.
- castShadows
- Receives the current cast shadows style state.
Q3View_GetDefaultAttributeSet |
( TQ3Status ) Q3View_GetDefaultAttributeSet ( TQ3ViewObject _Nonnull view, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the default attribute set from a view.
The reference count of the attribute set is incremented.
- view
- The view to query.
- attributeSet
- Receives the default attribute set. Dispose the reference when you are done with it.
Q3View_GetDepthCompareStyleState |
( TQ3Status ) Q3View_GetDepthCompareStyleState ( TQ3ViewObject _Nonnull view, TQ3DepthCompareFunc* _Nonnull outFunc );
Must be called within a submitting loop.
- view
- The view to query.
- outFunc
- Receives the depth compare function.
Q3View_GetDepthRangeStyleState |
( TQ3Status ) Q3View_GetDepthRangeStyleState ( TQ3ViewObject _Nonnull view, TQ3DepthRangeStyleData* _Nonnull outData );
Must be called within a submitting loop.
- view
- The view to query.
- outData
- Receives the depth range data.
Q3View_GetDrawContext |
( TQ3Status ) Q3View_GetDrawContext ( TQ3ViewObject _Nonnull view, TQ3DrawContextObject _Nullable * _Nonnull drawContext );
Get the draw context from a view.
The reference count of the draw context is incremented.
- view
- The view to query.
- drawContext
- Receives the draw context associated with the view. Dispose the reference when you are done with it.
Q3View_GetFillStyleState |
( TQ3Status ) Q3View_GetFillStyleState ( TQ3ViewObject _Nonnull view, TQ3FillStyle * _Nonnull fillStyle );
Get the current fill style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- fillStyle
- Receives the current fill style state.
Q3View_GetFogStyleState |
( TQ3Status ) Q3View_GetFogStyleState ( TQ3ViewObject _Nonnull view, TQ3FogStyleData * _Nonnull fogData );
Get the current fog style associated with a view.
Must be called within a submitting loop.
This function is not available in QD3D.
- theView
- The view to query.
- fogData
- Receives the current fog style state.
Q3View_GetFrustumToWindowMatrixState |
( TQ3Status ) Q3View_GetFrustumToWindowMatrixState ( TQ3ViewObject _Nonnull view, TQ3Matrix4x4 * _Nonnull matrix );
Get the frustum-to-window matrix state from a view.
Must be called within a submitting loop.
This matrix may be used (via Q3Point3D_Transform) to transform
points from frustum coordinates into window coordinates. See
Q3View_GetWorldToFrustumMatrixState for a description of frustum
coordinates.
- view
- The view to query.
- matrix
- Receives the frustum-to-window matrix.
Q3View_GetHighlightStyleState |
( TQ3Status ) Q3View_GetHighlightStyleState ( TQ3ViewObject _Nonnull view, TQ3AttributeSet _Nullable * _Nonnull highlightStyle );
Get the current highlight style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- highlightStyle
- Receives the current highlight style state (the attribute set, not the style object). If not NULL, this is a new reference that you are responsible for disposing of.
Q3View_GetIlluminationShaderState |
( TQ3Status ) Q3View_GetIlluminationShaderState ( TQ3ViewObject _Nonnull theView, TQ3ObjectType* _Nonnull outType );
Get the current illumination shader state of a view. Must be called within a submitting loop.
- theView
- The view to query.
- outType
- Receives the type of the current illumination shader.
Q3View_GetInterpolationStyleState |
( TQ3Status ) Q3View_GetInterpolationStyleState ( TQ3ViewObject _Nonnull view, TQ3InterpolationStyle * _Nonnull interpolationType );
Get the current interpolation style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- interpolationType
- Receives the current interpolation style state.
Q3View_GetLightGroup |
( TQ3Status ) Q3View_GetLightGroup ( TQ3ViewObject _Nonnull view, TQ3GroupObject _Nullable * _Nonnull lightGroup );
Get the light group from a view.
The reference count of the light group is incremented.
- view
- The view to query.
- lightGroup
- Receives the light group associated with the view. Dispose the reference when you are done with it.
Q3View_GetLocalToWorldMatrixState |
( TQ3Status ) Q3View_GetLocalToWorldMatrixState ( TQ3ViewObject _Nonnull view, TQ3Matrix4x4 * _Nonnull matrix );
Get the local-to-world matrix state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- matrix
- Receives the local-to-world matrix.
Q3View_GetOrientationStyleState |
( TQ3Status ) Q3View_GetOrientationStyleState ( TQ3ViewObject _Nonnull view, TQ3OrientationStyle * _Nonnull fontFacingDirectionStyle );
Get the current orientation style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- fontFacingDirectionStyle
- Receives the current orientation style state.
Q3View_GetPickIDStyleState |
( TQ3Status ) Q3View_GetPickIDStyleState ( TQ3ViewObject _Nonnull view, TQ3Uns32 * _Nonnull pickIDStyle );
Get the current pick ID style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- pickIDStyle
- Receives the current pick ID style state.
Q3View_GetPickPartsStyleState |
( TQ3Status ) Q3View_GetPickPartsStyleState ( TQ3ViewObject _Nonnull view, TQ3PickParts * _Nonnull pickPartsStyle );
Get the current pick parts style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- pickPartsStyle
- Receives the current pick parts style state.
Q3View_GetReceiveShadowsStyleState |
( TQ3Status ) Q3View_GetReceiveShadowsStyleState ( TQ3ViewObject _Nonnull view, TQ3Boolean * _Nonnull receiveShadows );
Get the current receive shadows style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- receiveShadows
- Receives the current receive shadows style state.
Q3View_GetRenderer |
( TQ3Status ) Q3View_GetRenderer ( TQ3ViewObject _Nonnull view, TQ3RendererObject _Nullable * _Nonnull renderer );
Get the renderer from a view.
The reference count of the renderer is incremented.
- view
- The view to query.
- renderer
- Receives the renderer associated with the view. Dispose the reference when you are done with it.
Q3View_GetSubdivisionStyleState |
( TQ3Status ) Q3View_GetSubdivisionStyleState ( TQ3ViewObject _Nonnull view, TQ3SubdivisionStyleData * _Nonnull subdivisionStyle );
Get the current subdivision style state from a view.
Must be called within a submitting loop.
- view
- The view to query.
- subdivisionStyle
- Receives the current subdivision style state.
Q3View_GetWorldToFrustumMatrixState |
( TQ3Status ) Q3View_GetWorldToFrustumMatrixState ( TQ3ViewObject _Nonnull view, TQ3Matrix4x4 * _Nonnull matrix );
Get the world-to-frustum matrix state from a view.
This matrix can be used (via Q3Point3D_Transform
) to transform points
from world coordinates to frustum coordinates. Frustum coordinates
specify where a point falls within the viewing frustum. In frustum
space, the viewable area ranges in X from -1 (left) to 1 (right); in
Y from -1 (bottom) to 1 (top), and in Z from 0 (near clipping plane)
to -1 (far clipping plane).
Note that this matrix cannot sensibly transform a point which is at
or behind the near clipping plane.
This matrix may be inverted for frustum-to-world transformations.
This function must be called within a submitting loop. If you need
this matrix when you are not in a submitting loop, use
Q3Camera_GetWorldToFrustum
instead. However, this function may not return
the same result as Q3Camera_GetWorldToFrustum
, because
Q3Camera_GetWorldToFrustum
does not respect the action of a camera
transform or a rasterize transform.
If the view's camera has a nonlinear projection (as in fisheye and all-seeing
cameras), then the world to frustum transformation cannot be expressed
as a matrix, hence this function will return kQ3Failure
.
- view
- The view to query.
- matrix
- Receives the world-to-frustum matrix.
Q3View_GetWriteSwitchStyleState |
( TQ3Status ) Q3View_GetWriteSwitchStyleState ( TQ3ViewObject _Nonnull view, TQ3Uns32* _Nonnull outMask );
Must be called within a submitting loop.
- view
- The view to query.
- outMask
- Receives the write switch mask. See TQ3WriteSwitchMasks.
Q3View_IsBoundingBoxVisible |
( TQ3Boolean ) Q3View_IsBoundingBoxVisible ( TQ3ViewObject _Nonnull view, const TQ3BoundingBox * _Nonnull bbox );
The bounding box (assumed to be in local coordinates) is tested for
intersection with the view frustum of the camera currently associated
with the view.
This function could be used for visibility culling, either in a
rendering loop of client code or within a renderer.
- view
- The view to check the bounding box against.
- bbox
- The local bounding box to test.
Q3View_New |
( TQ3ViewObject _Nonnull ) Q3View_New (void);
Create a new view.
Q3View_NewWithDefaults |
( TQ3ViewObject _Nullable ) Q3View_NewWithDefaults ( TQ3ObjectType drawContextType, void * _Nonnull drawContextTarget );
Create a view with a default camera, light group, renderer, and
draw context for the specified draw context target.
The draw context type indicates the type of draw context target
to create, and implies the following values for drawContextTarget.
kQ3DrawContextTypePixmap => A TQ3Pixmap object.
kQ3DrawContextTypeMacintosh => A WindowRef.
kQ3DrawContextTypeCocoa => An NSView.
kQ3DrawContextTypeWin32DC => An HDC.
kQ3DrawContextTypeX11 => A Visual.
kQ3DrawContextTypeBe => A BView.
The exact contents of the returned view are not defined, however it
should be suitable for interactively rendering objects placed at the
origin and will fill the supplied window.
This function is not available in QD3D.
- drawContextType
- The type of data referenced by drawContextTarget
- drawContextTarget
- The window/etc reference for the draw context.
Q3View_SetCamera |
( TQ3Status ) Q3View_SetCamera ( TQ3ViewObject _Nonnull view, TQ3CameraObject _Nonnull camera );
Set the camera for a view.
The reference count of the camera will be incremented by the view.
- view
- The view to update.
- camera
- The camera to assign to the view.
Q3View_SetDefaultAttributeSet |
( TQ3Status ) Q3View_SetDefaultAttributeSet ( TQ3ViewObject _Nonnull view, TQ3AttributeSet _Nonnull attributeSet );
Set the default attribute set for a view.
The reference count of the attribute set will be incremented by the view.
- view
- The view to update.
- attributeSet
- The attribute set to assign to the view.
Q3View_SetDrawContext |
( TQ3Status ) Q3View_SetDrawContext ( TQ3ViewObject _Nonnull view, TQ3DrawContextObject _Nonnull drawContext );
Set the draw context for a view.
The reference count of the draw context will be incremented by the view.
- view
- The view to update.
- drawContext
- The draw context to assign to the view.
Q3View_SetEndFrameMethod |
( TQ3Status ) Q3View_SetEndFrameMethod ( TQ3ViewObject _Nonnull view, TQ3ViewEndFrameMethod _Nullable endFrame, void * _Nonnull endFrameData );
Set the end frame method for view submit operations.
- view
- The view to update.
- endFrame
- The view end frame callback.
- endFrameData
- Application-specific data for the callback.
Q3View_SetIdleMethod |
( TQ3Status ) Q3View_SetIdleMethod ( TQ3ViewObject _Nonnull view, TQ3ViewIdleMethod _Nullable idleMethod, const void * _Nonnull idleData );
Set the idle method for view submit operations.
An idle method can be used to return control to the application
periodically during a submit loop.
- view
- The view to update.
- idleMethod
- The view idle callback.
- idleData
- Application-specific data for the callback.
Q3View_SetIdleProgressMethod |
( TQ3Status ) Q3View_SetIdleProgressMethod ( TQ3ViewObject _Nonnull view, TQ3ViewIdleProgressMethod _Nullable idleMethod, const void * _Nonnull idleData );
Set the idle progress method for view submit operations.
An idle method can be used to return control to the application
periodically during a submit loop.
The idle progress method allows renderers to pass progress information
to the application, to update the user interface during a render.
- view
- The view to update.
- idleMethod
- The view idle callback.
- idleData
- Application-specific data for the callback.
Q3View_SetLightGroup |
( TQ3Status ) Q3View_SetLightGroup ( TQ3ViewObject _Nonnull view, TQ3GroupObject _Nonnull lightGroup );
Set the light group for a view.
The reference count of the light group will be incremented by the view.
- view
- The view to update.
- lightGroup
- The light group to assign to the view.
Q3View_SetRenderer |
( TQ3Status ) Q3View_SetRenderer ( TQ3ViewObject _Nonnull view, TQ3RendererObject _Nullable renderer );
Set the renderer for a view.
The reference count of the renderer will be incremented by the view.
- view
- The view to update.
- renderer
- The renderer to assign to the view.
Q3View_SetRendererByType |
( TQ3Status ) Q3View_SetRendererByType ( TQ3ViewObject _Nonnull view, TQ3ObjectType theType );
Set the renderer for a view.
The renderer is specified by class type, e.g., kQ3RendererTypeInteractive
for the interactive renderer or kQ3RendererTypeWireFrame for the wire-frame
renderer.
- view
- The view to update.
- theType
- The type of the renderer to assign to the view.
Q3View_StartBoundingBox |
( TQ3Status ) Q3View_StartBoundingBox ( TQ3ViewObject _Nonnull view, TQ3ComputeBounds computeBounds );
Start a bounding loop.
- view
- The view to start bounding with.
- computeBounds
- The accuracy of the calculated bounds.
Q3View_StartBoundingSphere |
( TQ3Status ) Q3View_StartBoundingSphere ( TQ3ViewObject _Nonnull view, TQ3ComputeBounds computeBounds );
Start a bounding loop.
- view
- The view to start bounding with.
- computeBounds
- The accuracy of the calculated bounds.
Q3View_StartPicking |
( TQ3Status ) Q3View_StartPicking ( TQ3ViewObject _Nonnull view, TQ3PickObject _Nonnull pick );
Start a picking loop.
- view
- The view to start picking with.
- pick
- The pick object for the pick loop.
Q3View_StartRendering |
( TQ3Status ) Q3View_StartRendering ( TQ3ViewObject _Nonnull view );
Start a rendering loop.
- view
- The view to start rendering with.
Q3View_Sync |
( TQ3Status ) Q3View_Sync ( TQ3ViewObject _Nonnull view );
Flush the previous rendering loop to the draw context.
Blocks until the previous rendering loop has updated the draw context. May only
be called after a call to Q3View_EndRendering.
- view
- The view to sync.
Q3View_TransformLocalToWindow |
( TQ3Status ) Q3View_TransformLocalToWindow ( TQ3ViewObject _Nonnull theView, const TQ3Point3D * _Nonnull localPoint, TQ3Point2D * _Nonnull windowPoint );
Transforms a point from local to window (pixel) coordinates.
May only be called within a view submitting loop.
This function is not available in QD3D.
- theView
- The view currently being submitted to.
- localPoint
- The point to transform, in local coordinates.
- windowPoint
- The transformed point, in window coordinates.
Q3View_TransformLocalToWorld |
( TQ3Status ) Q3View_TransformLocalToWorld ( TQ3ViewObject _Nonnull theView, const TQ3Point3D * _Nonnull localPoint, TQ3Point3D * _Nonnull worldPoint );
Transforms a point from local to world coordinates.
May only be called within a view submitting loop.
This function is not available in QD3D.
- theView
- The view currently being submitted to.
- localPoint
- The point to transform, in local coordinates.
- worldPoint
- The transformed point, in world coordinates.
Q3View_TransformWorldToWindow |
( TQ3Status ) Q3View_TransformWorldToWindow ( TQ3ViewObject _Nonnull theView, const TQ3Point3D * _Nonnull worldPoint, TQ3Point2D * _Nonnull windowPoint );
Transforms a point from world to window (pixel) coordinates.
May only be called within a view submitting loop.
This function is not available in QD3D.
- theView
- The view currently being submitted to.
- worldPoint
- The point to transform, in world coordinates.
- windowPoint
- The transformed point, in window coordinates.
TQ3ViewEndFrameMethod |
typedef Q3_CALLBACK_API_C (void, TQ3ViewEndFrameMethod) (
TQ3ViewObject _Nonnull theView,
void * _Nonnull endFrameData
);
Application callback for Q3View_SetEndFrameMethod.
- theView
- The view being submitted to.
- endFrameData
- The application-specific data passed to Q3View_SetEndFrameMethod.
TQ3ViewIdleMethod |
typedef Q3_CALLBACK_API_C (TQ3Status, TQ3ViewIdleMethod) (
TQ3ViewObject _Nonnull theView,
const void * _Nonnull idlerData
);
Application callback for Q3View_SetIdleMethod.
- theView
- The view being submitted to.
- idlerData
- The application-specific data passed to Q3View_SetIdleMethod.
TQ3ViewIdleProgressMethod |
typedef Q3_CALLBACK_API_C (TQ3Status, TQ3ViewIdleProgressMethod) (
TQ3ViewObject _Nonnull theView,
const void * _Nonnull idlerData,
TQ3Uns32 progressCurrent,
TQ3Uns32 progressCompleted
);
Application callback for Q3View_SetIdleProgressMethod.
- theView
- The view being submitted to.
- idlerData
- The application-specific data passed to Q3View_SetIdleProgressMethod.
- progressCurrent
- The number of work units completed.
- progressCompleted
- The total number of work units which will be completed.
TQ3ViewStatus |
typedef enum TQ3ViewStatus QUESA_ENUM_BASE(TQ3Uns32) { kQ3ViewStatusDone = 0, kQ3ViewStatusRetraverse = 1, kQ3ViewStatusError = 2, kQ3ViewStatusCancelled = 3, kQ3ViewStatusSize32 = 0xFFFFFFFF } TQ3ViewStatus;
View submit loop status.
- kQ3ViewStatusDone
- Submit loop completed successfully.
- kQ3ViewStatusRetraverse
- Submit loop requires another pass.
- kQ3ViewStatusError
- Submit loop encountered an error.
- kQ3ViewStatusCancelled
- Submit loop was cancelled.
© 1999-2023 Quesa Developers (Last Updated 1/27/2023)


Photo editing and processing is the process of taking the digital data of an image and manipulating it to create the desired result.
Firstly we need to make sure we are using the correct file format for our needs
When we edit an image we can change parameters such as white balance, tint, contrast, raise shadows and reduce highlights to achieve a higher dynamic range.
Editing can, however, have negatives as is has become a sort of a stigma in today's time
I guess I would classify as a LR user who sees photoshopped images as not that much of a good thing.

I start having problems with photographers that give the impression they took a picture when in reality it's multiple completely different pictures stitched together to achieve something. Using one image and then replacing the sky, adding a foreground subject in post and so on, removing background clutter is still a bit of a gray area, I don't do it but I can imagine a scenario where you can't get a clean background when making the shot. This is where I start making a distinction between "digital artists" (can't think of a more precise term) and photographers.
It's the difference between capturing something real and editing it to make it more similar to the view of the human eye or changing it slightly to achieve a certain look. To elevate the reality to a higher aesthetic level and presenting that through photography.
On the other hand, using your photos just as assets, material needed to create a new, different piece of art that is it's own thing and not a tweaked version of reality is not something I could call photography.
Photography is a skill of taking or rather making photos, where a photo gets its value from what it presents and the way it is taken. Once you are at that point you can edit it to give it that slight bit more of dimension, atmosphere and perceived image quality. Photography gives an artistic representation of a captured moment in reality.
In my mind, the skill in photography is not in the process of greatly changing or even assembling photos together in a coherent and believable way to get a stunning result. This gives you a created fictional moment and can no longer be considered photography.
When something like this is presented as a photograph I see that as a bad thing. It is art in its own way, equally valuable but different than photography. When one takes photoshop too far it can be seen as using artificial beauty due to lack of capability to capture the natural beauty and I guess in fashion risking to misrepresent reality.
I think there is a stigma around photoshopping because it is viewed as less genuine than not edited photos and the best possible result is preferred to be achieved in the process of taking the photo and not after the fact. "Sure, you could fix that in post, but the image is going to be more genuine if you do it in real life." This in a way puts the skill of taking the photo above editing it as editing any more than would've been minimally necessary is seen as compensating for a worse shot.


Points
Reward points can be redeemed at hospitals in touch with
CARAVAN
similar to points redeemed in Blood Donation


In The Alchemist, you refer to Soul of the World. What exactly is this? How is it tied to religion or spirituality? Well, let’s distinguish religion from spirituality. I am Catholic, so religion for me is a way of having discipline and collective worship with persons who share the same mystery. But in the end all religions tend to point to the same light. In between the light and us, sometimes there are too many rules. The light is here and there are no rules to follow this light.
The alchemist character says that “everything has a soul” -including inanimate objects like rocks and water. Do you believe that? I do believe that everything we see, everything that is in front of us is just the visible part of reality. We have the invisible part of reality, like emotions for example like feelings. This is our perception of the world, but God is –as William Blake said– in a grain of sand and in a flower. This energy is everywhere.
Are all souls the same? Or are human souls in any way different? I believe everything is one thing only. That said, there are some questions in my life that I don’t know…I’ve stopped asking. At the very beginning of my life, I wanted to have answers for everything. And now I respect the fact that I can’t have answers for everything. So for this question I go to the mystery of it and say I don't know. I only know that I am alive and there is something that manifests in my life, that it is God and one day I am going to understand my life, probably in the day that I die, or afterward. But I try to find good questions and not good answers.
You say we might know more “afterward”. You’re saying you think certain things might happen in the afterlife? We cannot know anything for sure. But I don’t believe in time either. You say “when we die”, but time is another of these things that we need to help ourselves to go through life, but it does not exists.  I am living out my past and future lives. Whatever I do now, even in this conversation, can affect all my past and future lives. I do believe in life after death, but I also don't think that it’s that important. What is important is to understand that we are also living this life after death now.
So we have to get rid of the notion of time? We have to try to get rid of the notion of time. And when you have an intense contact of love with nature or another human being, like a spark, then you understand that there is no time and that everything is eternal.
It sounds like this idea probably helped you overcome your fear of not existing, which you describe in the introduction to The Alchemist. Yes, of course there was this fear of death. And one day when I was made a pilgrimage to Santiago de Compostela, I had to go through an exercise and I had to face my death. Since then I realize that death is not the end of life, but it is also my best friend.
Your death is always sitting by your side?  I see death as a beautiful woman.
What is she saying?  But she says, “OK, not now-but pay attention and try to get the best of every moment because I am going to take you.” And I say, “OK, thank you for giving me the most important advice in life”–to live your moment fully.
You mentioned that you’re Catholic, but you’ve said elsewhere that your Jesuit upbringing was painful in some ways. What do you see as the value of, and problems with, organized religion? The value is that they give you discipline and they give you collective worship and they give you humbleness toward the mysteries. The danger is that every religion, including the Catholic one, says, “I have the ultimate truth”. Then you start to rely on the priest, the mullah, the rabbi, or whoever, to be responsible for your acts. In fact, you are the only one who is responsible.
In your book Veronika Decides to Die, Veronika is bored with the sameness of every day. How can people break of the sameness? Once someone asked me, “What do you want to be your epitaph?”[on your tombstone]. So I said, “Paulo Coelho died while he was alive.” The person said, “Why this epitaph? Everyone dies when he or she is alive.” I said, “No, this is not true.” The same pattern repeating and over again, you are not alive anymore. To die alive is to take risks. To pay your price. To do something that sometimes scares you but you should do because you may like or you may not like.
You also say people should watch for omens. Can you describe what you mean by omens? Omens are the individual language in which God talks to you. My omens are not your omens. They are this strange, but very individual language that guides you toward your own destiny. They are not logical. They talk to your heart directly. The only way that you can learn any language is by making mistakes. I made my mistakes, but then I started to connect with the signs that guide me. This silent voice of God that leads me to the places where I should be.
The Alchemist talks about the principle of favorability, which is sort of like “beginner’s luck.” What would you say to people who feel they have never experienced beginner’s luck? People who feel that every time they try to move toward a dream, they’re blocked? Try again. [laughs]. Because when you’re really close to what God meant to you to be here, you are going to experience beginner’s luck.
Back to top


I received my kit the other day and am looking forward to the build and seeing how this will all work out.
I have a few questions about CT installations...
Ideally I'd like to monitor the total power consumption for the house AND several individual circuits, but with only 3 CT's available out of the box, I need to be more selective/creative.
With North American Residential Power being Split-Phase (3-Wire Single Phase) I think I should be able to have both hot legs feeding my main panel running through a single CT to capture my total power consumption for the house. If correct, then I would have "left over" 2 CT's for things like Hot Water Tank circuits, etc. As well, any 240v circuits in the house (Stove, Hot Water, etc) could be monitored the same way, both hot legs through a single CT. All 120v circuits would obviously just have the hot leg run through the CT.
Am I missing something obvious, or totally misunderstanding the way this works? I'm embarrassed to admit I work for a company that makes this sort of equipment, and yet my understanding of it's operation is quite shaky. I'll try to confirm with some of the engineers here and perhaps answer my own questions.
Thanks in advance,
Tyrone
Re: Question about CT's for a North American installation
I don't think it works like that. The two "hot" leads are in anti-phase so that there is 240V between them. If you put both wires through the same CT the currents will subtract.
It may work if you swap one wire around so that the currents will add and then 240V appliances will show double the current at 120V which will give the correct power.
Re: Question about CT's for a North American installation
I believe you are right Martin, I think the 2 hot legs are 180 degrees out of phase. Which would mean I can monitor my total consumption, plus 1 120v circuit before I have to modify the eMon or buy additional units.
Too bad.
Re: Question about CT's for a North American installation
This question comes up from time to time and I think if you search the forums, there's some good information.
So yes, Martin, you are generally right, but it depends on the two voltages being equal, and the reports are, that is indeed a valid assumption in most cases.
But the problem might be getting two cables through one c.t., so you probably do need to use 2.
[I need to do some deep thinking here and work out what happens if you parallel two c.t's into one input... I'm not suggesting it until I've thought it through].


{% extends 'layouts/base.html' %} {% block title %} New | MySchool Advisor {% endblock %} {% block content %}
Pick the programs you'd like to visualize completing your degree.


Log out
Documents
Documents
Zoom Reset
(Zoom with Alt+wheel, pan with Alt+drag)
Save Changes
Extractions
Boxes
Links
PPS
OCR
Data
Manual
Reviewed
To Review
Warning
Rejected
Create PPS
Comment
Display boxes over origin Layout
Display overlayed text (experimental)
-


Wireframes
A wireframe of the homepage for desktop view
A wireframe of the homepage for tablet view
A wireframe of the homepage for mobile view


If three elves can wrap three toys in hour, how many elves are needed to wrap six toys in 2 hours? Answer: _____ elves
In an athletics team, tall members are three times more likely to win a medal than short members. This year the team has won 60 medals so far. How many of these have been won by short athletes? Answer: _____ medals
If John can drink one barrel of water in 6 days, and Mary can drink one barrel of water in 12 days, how long would it take them to drink one barrel of water together? Answer: _____ days
Jerry received both the 15th highest and the 15th lowest mark in the class. How many students are in the class?  How much has he made? Answer: _____ dollars
Simon decided to invest $8,000 in the stock market one day early in 2008. Six months after he invested, on July 17, the stocks he had purchased were down 50 % .Fortunately for Simon, from July 17 to October 17, the stocks he had purchased went up 75%. At this point, Simon has: Answer: _____ (enter the letter)


Completed Masters in Computer Science from UIC focusing on ML and AI, this Dec 2016 with 3.67 GPA. And Bachelors in CS from VIT, May 2013. Worked as a Full Stack Developer at Zomato and Josh Technology Group for about 3 years, and as machine learning intern over summer 2016.


--- layout: archive title: "Blog" permalink: /blog/ author_profile: true --- {% assign postsByYear = site.blog | group_by_exp:"post", "post.date | date: '%Y'" | reverse %} {% for year in postsByYear %}